首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
对于一个使用邻接表存储的有向图G,可以利用深度优先遍历方法,对该图中结点进行拓扑排序。 其基本思想是:在遍历过程中,每访问一个顶点,就将其邻接到的顶点的入度减1,并对其未访问的、入度为0的邻接到的顶点进行递归。 写出在遍历图的同时进行拓扑排序的算法。
对于一个使用邻接表存储的有向图G,可以利用深度优先遍历方法,对该图中结点进行拓扑排序。 其基本思想是:在遍历过程中,每访问一个顶点,就将其邻接到的顶点的入度减1,并对其未访问的、入度为0的邻接到的顶点进行递归。 写出在遍历图的同时进行拓扑排序的算法。
admin
2019-08-15
118
问题
对于一个使用邻接表存储的有向图G,可以利用深度优先遍历方法,对该图中结点进行拓扑排序。
其基本思想是:在遍历过程中,每访问一个顶点,就将其邻接到的顶点的入度减1,并对其未访问的、入度为0的邻接到的顶点进行递归。
写出在遍历图的同时进行拓扑排序的算法。
选项
答案
算法 void dfs(AdjList g,vertype v){ //以顶点v开始深度优先遍历有向图g,顶点信息就是顶点编号 ArcNode*t; //指向边结点的临时变量 printf(”%d”,v); visited[v]=1 ; P=g[v].firstarc; while(P!=null){ j=p一>adjvex; if(visited[j]==1&&finished[j]==0)flag=0; //dfs结束前出现回边 else if(visited[j]=:0){dfs(g,j);finished[j]=1;} P=P一>next; }//while t=(ArcNode*)malloc(sizeof(ArcNode)); //申请边结点 t一>adjvex=V;t一>next=final;final=t; //将该顶点插入链表 }//dfs结束 int dfs_Topsort(Adjlist g){ //对以邻接表为存储结构的有向图进行拓扑排序,拓扑成功返回1,否则返回0 i=1; while(flag&&i<=n) if(visited.[i]==0){dfs(g,i);finished[i]=1;}//if return(flag); } 提示:此题考查的知识点是图的遍历。对有向图进行深度优先遍历可以判定图中是否有回路。若从有向图某个顶点v出发遍历,在dfS(v)结束之前,出现从顶点u到顶点v的回边,图中必存在环。由于dfs产生的是逆拓扑排序,故设一类型是指向邻接表的边结点的全局指针变量final,在dfs函数退出时,把顶点v插入到final所指的链表中,链表中的结点就是一个正常的拓扑序列。
解析
转载请注明原文地址:https://kaotiyun.com/show/udCi777K
本试题收录于:
计算机408题库学硕统考专业分类
0
计算机408
学硕统考专业
相关试题推荐
二里头文化是我国考古史上的重大发现,具有重大的意义。根据所学知识,回答问题:二里头文化以及相关考古遗址的发现和研究,是近年来史学界关注的一个热点。二里头文化的年代断限是()
下列选择中,()不是操作系统关心的主要问题。
某计算机采用微程序控制方式,微指令字长32位,采用字段直接编码的控制方式,共有55个微命令,可分为6个互斥组,分别包含1、3、7、8、12、24个微命令。另外,该机共有5个可判定的外部条件,采用断定方式形成后续微指令地址。(1)设计该机微指令的格式,
下列几种排序方法中,要求内存量最大的是()。
三类线程search、insert、delete共享(访问)单链表,利用P、V原语操作实现这三类线程。限定如下:(1)search可以与同类线程同时执行;(2)insert类线程之间互斥,但是可以与任意多search同时执行;(3)del
支持多道程序设计的操作系统在运行过程中,不断会选择新进程来运行,共享CPU资源,但是,下面哪个不是操作系统选择新进程的直接原因()。
已知小写英文字母“a”的ASCⅡ码值为61H,现字母“g”被存放在某个存储单元中,若采用偶校验(假设最高位作为校验位),则该存储单元中存放的十六进制数是()。
已知有6个顶点(顶点编号为0~5)的有向带权图G,其邻接矩阵A为上三角矩阵,按行为主序(行优先)保存在如下的一维数组中。要求:写出图G的邻接矩阵A。
某网络拓扑如图A-3所示,路由器R1通过接口E1、E2分别连接局域网1、局域网2,通过接口LO连接路由器R2,并通过路由器R2连接域名服务器与互联网。R1的L0接口的IP地址是202.118.2.1,R2的L0接口的IP地址是202.118.2.2,L1接
设无向图G=(V,E)和G’=(V’,E’),如果G’是G的生成树,则下面说法中错误的是()。
随机试题
社会工作者小冯针对社区服刑人员开展治疗小组,她为每一个组员设定了个别性治疗计划,同时通过对所有小组组员个别性问题的综合分析,寻找小组共同成长的目标,实施整体性的小组治疗计划。可见,小冯坚持和贯彻了()工作原则。
设y=x2(x>0),则函数y的微分dy=_______.
病毒性肺炎和支原体肺炎的共同点是
关于此病例以下的诊断哪个是错误的治疗掌指关节畸形,以下哪种方法是错误的
银行业从业人员的下列行为中,没有遵守“公平对待”原则的是()。
直接工程费是指在施工过程中耗费的构成工程实体的各项费用,包括()。
2015年12月31日,甲公司对一起未决诉讼确认的预计负债为300万元。2016年3月6日,法院对该起诉讼判决,甲公司应赔偿乙公司500万元;甲公司和乙公司均不再上诉。甲公司适用的所得税税率为15%,按净利润的10%提取法定盈余公积,2015年度财务报告批
下述哪些功能是数据库定义模块的基本功能?Ⅰ.数据库模式定义Ⅱ.数据库完整性定义Ⅲ.数据库安全性定义Ⅳ.存取路径定义
下列选项中不属于软件生命周期开发阶段任务的是()。
A、She’sunimpressedbywhatthemantoldher.B、ShedoubtsshecanafforditC、Shedoesn’tthinkit’ssuitableforher.D、She’s
最新回复
(
0
)