- 1、本文档共63页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据结构-图及基本概念和存储结构
图的存储表示--邻接矩阵 A B E C D 有向图的邻接矩阵为非对称矩阵 E D C B A E D C B A 图的存储表示--邻接矩阵 #define INFINITY INT_MAX //最大值∞ #define MAX_VERTEX_NUM 20 //最大顶点个数 Typedef enum{DG,DN,UDG,UDN} GraphKind //有向图,有向网,无向图,无向网 图的存储表示--邻接矩阵 typedef struct ArcCell { // 弧的定义 VRType adj; // VRType是顶点关系类型。 // 对无权图,用1或0表示相邻否; // 对带权图,则为权值类型。 InfoType *info; // 该弧相关信息的指针 } ArcCell 图的存储表示--邻接矩阵 typedef struct { // 图的定义 VertexType vexs[MAX_VERTEX_NUM]; // 顶点信息 ArcCell arcs[MAX_VERTEX_NUM][MAX_VERTEX_NUM]; // 弧的信息 int vexnum, arcnum; // 顶点数,弧数 GraphKind kind; // 图的种类标志 } MGraph; 图的存储表示--邻接表 0 1 2 3 4 5 A B C D E F 1 4 0 4 3 5 2 5 0 1 1 2 5 3 B A C D F E 1)无向图的邻接表 图的存储表示--邻接表 A B E C D 0 1 2 3 4 A B C D E 1 4 3 0 1 2 2 2)有向图的邻接表--每个顶点链接的是以该顶点为弧尾的弧 但是,在有向图的邻接表中不易找到指向该顶点的弧 图的存储表示--邻接表 A B E C D 3)有向图的逆邻接表--每个顶点链接的是指向该顶点的弧 0 1 0 1 2 3 4 A B C D E 3 2 0 3 4 图的存储表示--邻接表 邻接表:图的链式存储结构 对图中每个顶点建立一个单链表,第i个单链表中的结点表示依附顶点Vi的边。 对有向图来说,是指以顶点Vi的为弧尾的弧。 图的存储表示--邻接表 邻接表:图的链式存储结构 adjvex nextarc info 邻接点域 链域 数据域(存放权值等) 表结点: 头结点: data firstarc 数据域 链域,指向链表中第一个结点 弧结点 顶点结点 图的存储表示--邻接表 图的邻接表: 1、容易找到任意顶点的一个邻接点 2、但是要判定任意两个顶点(vi,vj)之间是否有边或者弧相连,需要搜索第i个或者第j个链表,不如邻接矩阵方便。 图的存储表示--有向图的十字链表 A B C A B C 0 1 2 ∧ 0 1 2 1 ∧ 0 2 ∧ ∧ 2 0 ∧ ∧ 图的存储表示--有向图的十字链表 弧尾顶点位置 弧头顶点位置 弧的相关信息 指向下一个有相同弧尾的结点 指向下一个有相同弧头的结点 tailvex headvex hlink tlink info 弧的结点结构 弧的结点结构表示 typedef struct ArcBox { // 弧的结构表示 int tailvex, headvex; InfoType *info; struct ArcBox *hlink, *tlink; } ArcBox; 图的存储表示--有向图的十字链表 顶点的结点结构表示 typedef struct VexNode { // 顶点的结构表示 VertexType data; ArcBox *firstin, *firstout; } VexNode; 图的存储表示--有向图的十字链表 十字链表 图的存储表示--有向图的十字链表 typedef struct { VexNode xlist[MAX_VERTEX_NUM]; // 顶点结点(表头向量) int vexnum, arcnum; //有向图的当前顶点数和弧数 } OLGraph; * * 图和图的存储结构 图的定义和术语 图的存储表示 小结和作业
您可能关注的文档
- 数学:第16章《平行四边形及认识》复习课件(华东师大版八年级上).ppt
- 数学:第24章图形及相似复习课件(华东师大版九年级上).ppt
- 数学:第4章图形及初步认识复习课件(华东师大版七年级上).ppt
- 数学:3.2《复数代数形式及四则运算》ppt课件(新人教a版-选修1-2).ppt
- 数学:第三章平面上直线及位置关系和度量复习课件(湘教版七年级下)456游戏大厅.ppt
- 数学:第二十章《数据及分析》复习课件(人教新课标八年级下).ppt
- 数形结合思想在教学中及应用(王新华).ppt
- 数据专业设计培训基础培训服务器及存储.ppt
- 数据中心供电系统设计理念及变化.ppt
- 数据分析过程-SPSS软件及使用.ppt
- 2025届高考政治冲刺复习我国的基本政治制度.pptx
- 2025届新高考历史冲刺精准复习世界殖民体系的瓦解与新兴国家的兴起.pptx
- 2025届高考政治冲刺精准复习我国的个人收入分配与社会保障.pptx
- 第5课+工业革命与工厂制度+高二历史统编版(2019)+选择性必修2.pptx
- 2025届高考政治冲刺精准复习法治政府.pptx
- 第16课+国家出路的探索与列强侵略的加剧高一上学期统编版(2019)必修中外历史纲要上.pptx
- 2025届高考政治冲刺精准复习 我国的根本政治制度.pptx
- 2025届新高考历史冲刺精准复习中国近代资产阶级救亡图存运动.pptx
- 2025届高考政治冲刺精准复习全面依法治国.pptx
- 2025届高考政治冲刺精准复习我国的基本政治制度.pptx
文档评论(0)