- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《数据结构》第8章:图
第8章 图 图的基本概念及存储结构 图的遍历 图的连通性及最小生成树 最短路径 有向无环图及其应用 图(graph)是由有限个顶点(vertex)集合及顶点间的关系(也称边)集合组合而成的一种非线性数据结构。通常我们可以用图的形式性描述来定义为: G=( V,E ) V = {vi | vi∈dataobject} E = {(vi,vj) | vi,vj∈V∧P(vi,vj)} 图的基本操作 (1) CreateGraph(G):输入图G的顶点和边,构造图G。 (2) DestroyGraph(G):销毁图G,释放所占空间。 (3) LocateVex(G, u):若G中存在顶点u,返回该顶点在图中位置;否则返回其他信息。 (4) GetVex(G, v):在图G中找到顶点V,并返回v的相关信息。 (5) PutVex(G, v, value):在图G中找到顶点V,并对v赋值value。 (6) FirstAdjVex(G, v):返回v的第一个邻接点。若该顶点在G中无邻接点,则返回“空”。 图的基本操作 (7) NextAdjVex(G, v, w):返回v的(相对于w的)下一个邻接点。若w是v的最后一个邻接点,则返回“空”。 (8) InsertVex(G, v):在图G中增添新顶点v。 (9) DeleteVex(G, v):删除G中顶点v及其相关的弧。 (10) InsertArc(G, v, w):在G中增添弧v,w,若G是有向的,则还增添对称弧w,v。 (11) DeleteArc(G, v, w):在G中删除弧v,w,若G是有向的,则还删除对称弧w,v。 (12) DFSTraverse(G, v):从顶点v起深度优先遍历图G。 (13) BFSTraverse(G, v):从顶点v起广度优先遍历图G。 邻接矩阵 邻接表 十字链表 邻接多重表 深度优先搜索 广度优先搜索 构造最小生成树的Prim算法 构造最小生成树的Kruskal算法 从一个源点到其他各顶点的最短路径 AOV网与拓扑排序 对AOV网实施拓扑排序的方法和步骤为: (1) 从AOV网中选择一个没有前驱的顶点(该顶点的入度为0)并且输出它; (2) 从网中删除该顶点以及与其相关联的全部有向边; (3) 重复上述操作,直到剩余的网中不再存在没有前驱的顶点为止。 AOE网与关键路径 [算法8.12] 拓扑排序算法 int Top_Sort(AlGraph *G) { //对以带入度的邻接链表为存储结构的图G,输出其一种拓扑序列 int i,j,k; int top=-1; //栈顶指针初始化 for (i=0;in;i++) //依次将入度为0的顶点压入链式栈 if (G-adjlist[i].indegree==0) { G-adjlist[i].indegree=top; top=i; } while (top!=-1) { j=top; top=G-adjlist[top].indegree; //从栈中退出一个顶点并输出 scanf(%c,G-adjlist[j].vertex); m++; ptr=G-adjlist[j].firstedge; while (ptr!=NULL) {k=ptr-adjvex; G-adjlist[k].indegree--; //当前输出顶点邻接点的入度减1 if (G-adjlist[k].indegree==0) //新的入度为0的顶点进栈 * * 王钢 主编 清华大学出版社 图的基本定义 邻接矩阵(adjacency matrix)属于图的顺序存储结构,所谓邻接矩阵表示法,就是采用一个一维数组存储图的顶点信息,用矩阵表示图中各顶点之间的邻接关系。假设图 A = (V, E)是一个有n个顶点的图,图的邻接矩阵是一个二维数组A[n][n],用来存放顶点的信息和边或弧的信息。邻接矩阵中元素定义为: 1 若(vi, vj)或vi, vj是E(G)的边或弧 A[i][j]= 0若(vi, vj)或vi, vj不是E(G)的边或弧 若G是网图,则邻接矩阵可定义为: wij 若(vi, vj)或vi, vj
您可能关注的文档
最近下载
- 三笔字实用教程(汉字书写技能训练)全套教学课件.pptx
- 兵棋推演中的智能决策技术:基于大语言模型的探索与应用.docx VIP
- 3DMine-矿业工程软件-帮助手册说明书.pdf VIP
- 2025年大连星海会展旅游集团有限公司人员招聘笔试备考题库.docx VIP
- 120万吨复合肥项目可行性研究报告.doc VIP
- 初中数学二轮复习 专题1.9 最值问题-利用垂线段、旋转求最值 课件.pptx VIP
- 芳烃部工艺简介.pdf VIP
- 4.2《扬州慢(淮左名都)》课件课件(共46张PPT)统编版高中语文选择性必修下册(含音频+视频).pptx VIP
- CB_T 3253-2013 船用柴油机技术条件.pdf VIP
- 课程与教学论全套教学课件.pptx
原创力文档


文档评论(0)