数据结构图2016分析.pptxVIP

  1. 1、本文档共68页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第七章 图;7.1 图的概念;7.1 图的概念;7.1 图的概念;2)邻接、关联 无向图中,对于任意两个顶点vi和顶点vj,若存在边(vi,vj),则称顶点vi和顶点vj互为邻接点,同时称边(vi,vj)关联于顶点vi和顶点vj。 有向图中,对于任意两个顶点vi和顶点vj,若存在弧vi,vj,则称顶点vi邻接到顶点vj,顶点vj邻接于顶点vi,同时称弧vi,vj关联于顶点vi和顶点vj 。 ;7.1 图的概念;7.1 图的概念;7.1 图的概念;7.1 图的概念;7.1 图的概念;7.1 图的概念;7.1 图的概念;;7.1 图的概念;7.2 图的存储;7.2.1 邻接矩阵表示法;7.2.1 邻接矩阵表示法;7.2.1 邻接矩阵表示法;7.2.1 邻接矩阵表示法;7.2.1 邻接矩阵表示法;7.2.1 邻接矩阵表示法;7.2.1 邻接矩阵表示法;7.2.1 邻接矩阵表示法;7.2.1 邻接矩阵表示法; ;7.2.1 邻接矩阵表示法;7.2.2 邻接表表示法;例1:无向图的邻接表;分析1: 对于n个顶点e条边的无向图,邻接表中除了n个头结点外,只有2e个表结点,空间效率为O(n+2e)。 若是稀疏图(en2),则比邻接矩阵表示法O(n2)省空间。;7.2.2 邻接表表示法;7.2.2 邻接表表示法;void CREATADJLIST(vexnode ga[ ], int n, int e) { int i,j,k; edgenode *s; for(i=0;in;i++) /*读入顶点信息*/ { ga[i].vertex=getchar(); ga[i].link=NULL; } ;7.2 图的存储;7.3 图的遍历;7.3.1 连通图的深度优先搜索遍历;7.3.1 连通图的深度优先搜索遍历;邻接矩阵中图的基本操作——深度优先遍历;7.3.1 连通图的深度优先搜索遍历;邻接表中图的基本操作——深度优先遍历;7.3.1 连通图的深度优先搜索遍历;7.3.2 连通图的广度优先搜索遍历;7.3.2 连通图的广度优先搜索遍历;邻接矩阵中图的基本操作——广度优先遍历;7.3.2 连通图的广度优先搜索遍历;邻接表中图的基本操作——广度优先遍历;7.3.2 连通图的广度优先搜索遍历;7.3.3 非连通图的遍历;int visited[n]; graph g; void TRAVER() { int i; for(i=0;in;i++) visited[i]=0; /*标志数组初始化*/ for (i=0; in; i++) if (visited[i]==0) { DFS (i); /*从顶点i出发遍历某一个连通分量*/ ptintf(“comp end\n”); } } ;7.4 生成树和最小生成树;7.4 生成树和最小生成树;7.4 生成树和???小生成树;7.4 生成树和最小生成树;7.4 生成树和最小生成树;(1)从V中任选一顶点u0,并置T为只含一个顶点的树: 即初始状态: U ={u0 }, TE={ }; (2)只要U≠V,就找出一条权值最小的边(u,v),且u∈U, v ∈V-U,将该条边(u,v)和不在T中的顶点v加入T中。 即: while(U ≠ V) { (u,v)=min{wuv, u∈U, v ∈V-U}; U=U+{v}; TE=TE+{(u,v)} } (3)直到把所有顶点加入T为止。;7.4 生成树和最小生成树;7.4 生成树和最小生成树;1;7.4 生成树和最小生成树;for(k=0;kn-1;k++) /*找n-1条边*/ { min=max; for(j=k;jn-1;j++) /*找最短边*/ if(T[j].lengthmin) { min=T[j].length; m=j;} e=T[m]; T[m]=T[k]; T[k]=e; /*交换*/ v=T[k].endvex; for(j=k+1;jn-1;j++) /*调整候选边*/ { d=dist[v-1][T[j].endvex-1];

您可能关注的文档

文档评论(0)

118books + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档