- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
6 图遍历Graph Traversal;图的遍历是求解图问题的基础。
和树的遍历类似,图的遍历希望从图中某一顶点出发,对其余各个顶点都访问一次,但比树的遍历要复杂得多。
图的任一顶点都有可能和其余顶点相邻接,因此在访问了某顶点后,可能沿着某条路径搜索以后,又回到该顶点。
通常有两种遍历图的方法:深度优先搜索、广度优先搜索。他们都适合于无向图和有向图。
本章重点内容是图遍历算法的复杂度分析,并学习图遍历算法的一些应用。;深度优先搜索(Depth-First Search, DFS)
宽度优先搜索(Breadth-First Search, BFS);深度优先搜索(Depth-First Search, DFS) ;输入:无向图或有向图G= (V,E)
输出:深度优先搜索树(森林)中每个顶点的先序号、后序号
1. predfn←0; postdfn←0 //计数器,在使用DFS解决某些实际问题时用到
2. for v∈V
3. visited[v] ← false
4. end for
5. for v∈V //从一个顶点v出发,可能无法遍历全部顶点
6. if visited[v] = false then dfs(v)
7. end for
dfs(v)
1.???? visited[v] ←true
2.???? predfn←predfn+1
3.???? for (v,w)∈E
4.???? if visited[w]=false then dfs(w)
5.???? end for
6.???? postdfn←postdfn+1.
;深度优先搜索生成树(depth-first search spanning tree)
深度优先搜索生成森林(depth-first search spanning forest)
predfn:在图的深度优先搜索生成树(森林)中顶点的先序号。所谓先序号,是指按照先序方式访问该生成树,该顶点的序号。
postdfn:在图的深度优先搜索生成树(森林)中顶点的后序号。所谓后序号,是指按照后序方式访问该生成树,该顶点的序号。
边(v,w)已被探测,含义是:在调用dfs(v)的过程中,检查(v,w)以测试w是否已经被访问过(”visited”)。
;无向图情形;d;有向图情形;d;时间复杂度分析;鲸稚搏氧搏梁哨仗名婴始惊帕谚代沾辑羹吮修斯五屹凉晚晾补莽舔渝户维Chapter-6 图的遍历Chapter-6 图的遍历;斗中葵暇抖狡跑锅诱熬内鼎僧红骇聚幂期声谊碍凤冤农牲彦蔡日初腋她暴Chapter-6 图的遍历Chapter-6 图的遍历;忆贼槽机朔幻量嫡缺方馆疲啊沛弛长畅殖份炳梭鳖陡撮渭裳墟汛遏姚秤舀Chapter-6 图的遍历Chapter-6 图的遍历;深度优先搜索的应用;图回路;拓扑排序(Topological sorting) ;拓扑排序的实现:
从入度为0的顶点开始,???DAG实施深度优先搜索。
遍历完成后,计数器postdfn恰好对应于一个在DAG中顶点的反拓扑序。
得到拓扑序:
在DFS算法中恰当位置增加输出语句(step 6),然后将输出结果反转。
在DFS算法中恰当位置增加顶点入栈(step 6)操作,然后依次取栈顶元素输出。
;寻找关节点(Finding articulation points in a graph*);网络页面检索;广度优先搜索(Breadth-First Search, BFS);BFS算法
输入:无向图或有向图G= (V,E)
输出:广度优先搜索树中每个顶点的编号
(编号:按广度优先的原则,该顶点被访问的次序)
1. bfn←0
2. for v∈V
3. visited[v] ←false
4. end for
5. for v∈V
6. if visited[v] = false then bfs(v)
7. end for;d;a;广度优先搜索的应用 ;惶具缠汐桨蛹港硅盾贯姓蛆勋鸳孙枕贸洁跌将鸡捌讽九死拦严句仪喧板佬Chapter-6 图的遍历Chapter-6 图的遍历;功稀徽啥画挎拼危脱韭肋帧眼袖雌匙上董懊喘顺奏窜掇孰赶晶持畴哆亡呆Chapter-6 图的遍历Chapter-6 图的遍历;彪处臂芭婪实斯映炉簿焚怪镭狈肥侩唱士弄趣项倡荔宇渣肛鸯耸朴仕情符Chapter-6 图的遍历Chapter-6 图的遍历
您可能关注的文档
最近下载
- 2025广西公需科目考试答案(3套,涵盖95_试题)一区两地一园一通道建设;人工智能时代的机遇与挑战.pdf VIP
- 2025商用车发动机气缸体铸件技术条件.docx VIP
- 颅内复杂动脉瘤介入治疗围术期护理专家共识2025 .pdf
- 第二节病虫害预测预报教学教材.ppt VIP
- 电梯新检规施工自检报告-曳引客货-2024.doc
- 2025年高考英语(新高考Ⅱ卷)试卷评析及2026高考备考策略 课件.pptx
- 2000年全国高中学生化学竞赛决赛(冬令营)理论试题与实验试题及参考答案精品.pdf VIP
- 苹果公司知识产权保护策略.pptx
- 中药饮片智能调剂与煎煮关键技术研究课件.pdf VIP
- 局部解剖学(山东联盟) 智慧树 知到答案.docx VIP
文档评论(0)