鱼C论坛

 找回密码
 立即注册
查看: 2063|回复: 0

[学习笔记] 图:存储及操作(十字链表)

[复制链接]
发表于 2019-8-5 09:48:36 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 Julia999 于 2019-8-5 09:48 编辑
之前我提到过邻接矩阵法和邻接表法,现在多学一种方法:十字链表(有向图的一种链式存储结构)
但是,干啥子要多学一种方法勒?之前说过,在邻接表中,如果要找出入边,是要遍历整个邻接表的,实在是太麻烦撒,所以捏,就多一个方法咯~
但是捏,如果要理解十字链表,那就先学好邻接表,因为十字链表是在他的基础之上改进的~

#define MaxvertexNum 100
//边表结点
typedef struct ArcNode{
    int tailvex,headvex;  //尾域和头域
    struct ArcNode *hlink,*tlink;  //两个指针,出弧单链表和入弧单链表
    //InfoType info;
}ArcNode;
//顶点表
typedef struct VNode{
    VetexType data;  //保存数据
    ArcNode *firstin,*firstout;   //保存入弧单链表的头指针和出弧单链表的头指针
}VNode;
//十字链表
typedef struct{
    VNode xlist[MaxvertexNum];  //顶点表结点的结构体
    int vexnum,arcnum;
}GLGraph;


想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-23 10:54

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表