图的遍历-DFS

本文介绍了如何使用DFS遍历无环有向图,并探讨了在DFS算法中调整输出顺序的影响。通过具体例子展示了在退栈时输出顶点如何得到逆拓扑序列。在无环图中,DFS序列可以是拓扑序列的一种,而含有环的图则无法形成拓扑序列。分析了不同情况下的DFS遍历顺序和图的结构关系。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

用DFS遍历一个无环有向图,并在DFS算法退栈返回时打印相应的顶点,则输出的顶点序列是( )。

A. 逆拓扑有序
B.拓扑有序
C.无序的
D.无法确定

[2020统考真题]修改递归方式实现图的深度优化搜索DFS算法,将输出顶点信息的语句移到退出递归前(即执行输出语句后立刻退出递归)。采用修改后的算法遍历有向无环图G,若输出结果中包含G中的全部顶点,则输出的顶点序列是G的(  )

A. 拓扑有序序列
B. 逆拓扑有序序列

C. 广度优先搜索序列

D. 深度优先搜索序列

分析:

参考严蔚敏版《数据结构》

DFS算法步骤是:输出顶点V,深度优先遍历V的邻接点,是一个递归算法,如果顶点U到顶点V之间有弧,先输出U,再深度优势遍历其邻接点V。若是一个无环的有向图,DFS序列则是拓扑序列之一,请看图例

 

按照教材上描述的算法:DFS序列之一为:V1,V2,V4,V8,V5,V3,V6,V7,为拓扑序列之一

按照以上题目中描述,

评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值