09拓扑排序_topologicalsort(09拓扑排序_topologicalsort).docVIP

09拓扑排序_topologicalsort(09拓扑排序_topologicalsort).doc

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
09拓扑排序_topologicalsort(09拓扑排序_topologicalsort)

09拓扑排序_topologicalsort(09拓扑排序_topologicalsort) #包括“stdio. h” #包括“程序。” #包括“IO。” #包括“数学。” #包括“时间。” #定义好1 #定义错误0 #定义真正的1 #定义错误0 #定义maxedge 20 #定义maxvex 14 #定义无限65535 这是一个地位;/ *状态是函数的类型,其值是函数结果状态代码,如好等*/ 邻接矩阵结构/ * * / typedef struct { 国际vexs [ maxvex ]; int弧[ maxvex ] [ maxvex ]; 国际numvertexes,numedges; } MGraph; 邻接表结构****************** * / / * 定义边缘/ * * /边表结点 { 国际adjvex;/ * * /邻接点域,存储该顶点对应的下标 体重;/ * * /用于存储权值,对于非网图可以不需要 结构边缘*下;/*链域,指向下一个邻接点*/ } EdgeNode; 定义vertexnode / * * /顶点表结点 { int;/ * * /顶点入度 int数据;/ * * /顶点域,存储顶点信息 边缘* / * * /边表头指针firstedge; } VertexNode,adjlist [ maxvex ]; typedef struct { adjlist adjlist; 国际numvertexes,numedges;/ * * /图中当前顶点数和边数 } graphadjlist,* GraphAdjList; **************************** / * * / 虚空CreateMGraph(MGraph * g)/ * * /构件图 { int i,j; / * printf(“请输入边数和顶点数:”);* / G - numedges = maxedge; G - numvertexes = maxvex; 为(i = 0;i 克 numvertexes;i++)/ * * /初始化图 { G - vexs [我] =我; } 为(i = 0;i 克 numvertexes;i++)/ * * /初始化图 { 为(J = 0;J<G - numvertexes;j++) { G>弧[我] [ J ] = 0; } } G>弧[ 0 ] [ 4 ] = 1; G>弧[ 0 ] [ 5 ] = 1; G>弧[ 0 ] [ 11 ] = 1; G>弧[ 1 ] [ 2 ] = 1; G>弧[ 1 ] [ 4 ] = 1; G>弧[ 1 ] [ 8 ] = 1; G>弧[ 2 ] [ 5 ] = 1; G>弧[ 2 ] [ 6 ] = 1; G>弧[ 2 ] [ 9 ] = 1; G>弧[ 3 ] [ 2 ] = 1; G>弧[ 3 ] [ 13 ] = 1; G>弧[ 4 ] [ 7 ] = 1; G>弧[ 5 ] [ 8 ] = 1; G>弧[ 5 ] [ 12 ] = 1; G>弧[ 6 ] [ 5 ] = 1; G>弧[ 8 ] [ 7 ] = 1; G>弧[ 9 ] [ 10 ] = 1; G>弧[ 9 ] [ 11 ] = 1; G>弧[ 10 ] [ 13 ] = 1; G>弧[ 12 ] [ 9 ] = 1; } 利用邻接矩阵构建邻接表/ * * / 虚空CreateALGraph(MGraph G,graphadjlist * GL) { int i,j; 边缘* E; * GL =(graphadjlist)malloc(sizeof(graphadjlist)); (* GL)- numvertexes = g.numvertexes; (* GL)- numedges = G.numEdges; 为(i = 0;i g.numvertexes;i++)/ * * /读入顶点信息,建立顶点表 { (* GL)- adjlist [我] = 0; (* GL)- adjlist [我]。数据= g.vexs [我]; (* GL)- adjlist [我]。firstedge = null;/ * * /将边表置为空表 } 为(i = 0;i g.numvertexes;i++)/ * * /建立边表 { 为(J = 0;J g.numvertexes;j++) { 如果(g.arc [我] [ J ] = = 1) { E =(EdgeNode *)malloc(sizeof(EdgeNode)); E - adjvex = j;邻接序号为J * / / * E—下=(* GL)- adjlist [我]。firstedge;

您可能关注的文档

文档评论(0)

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

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

版权声明书
用户编号:6111134150000003

1亿VIP精品文档

相关文档