当前位置:首页 > 生活百科

图的深度优先遍历算法(图的深度优先遍历定义)

栏目:生活百科日期:2025-03-10浏览:0

1. 深度优先搜索介绍

图的深度优先搜索(Depth First Search),和树的先序遍历比较类似。

它的思想:假设初始状态是图中所有顶点均未被访问,则从某个顶点v出发,首先访问该顶点,然后依次从它的各个未被访问的邻接点出发深度优先搜索遍历图,直至图中所有和v有路径相通的顶点都被访问到。 若此时尚有其他顶点未被访问到,则另选一个未被访问的顶点作起始点,重复上述过程,直至图中所有顶点都被访问到为止。

显然,深度优先搜索是一个递归的过程。

2. 深度优先搜索图解

2.1 无向图的深度优先搜索

下面以&”无向图&”为例,来对深度优先搜索进行演示。

对上面的图G1进行深度优先遍历,从顶点A开始。

第1步:访问A。

第2步:访问(A的邻接点)C。

在第1步访问A之后,接下来应该访问的是A的邻接点,即&”C,D,F&”中的一个。但在本文的实现中,顶点ABCDEFG是按照顺序存储,C在&”D和F&”的前面,因此,先访问C。

第3步:访问(C的邻接点)B。

在第2步访问C之后,接下来应该访问C的邻接点,即&”B和D&”中一个(A已经被访问过,就不算在内)。而由于B在D之前,先访问B。

第4步:访问(C的邻接点)D。

在第3步访问了C的邻接点B之后,B没有未被访问的邻接点;因此,返回到访问C的另一个邻接点D。

第5步:访问(A的邻接点)F。

前面已经访问了A,并且访问完了&”A的邻接点B的所有邻接点(包括递归的邻接点在内)&”;因此,此时返回到访问A的另一个邻接点F。

第6步:访问(F的邻接点)G。

第7步:访问(G的邻接点)E。

因此访问顺序是:A -&> C -&> B -&> D -&> F -&> G -&> E

2.2 有向图的深度优先搜索

下面以&”有向图&”为例,来对深度优先搜索进行演示。

对上面的图G2进行深度优先遍历,从顶点A开始。

第1步:访问A。

第2步:访问B。

在访问了A之后,接下来应该访问的是A的出边的另一个顶点,即顶点B。

第3步:访问C。

在访问了B之后,接下来应该访问的是B的出边的另一个顶点,即顶点C,E,F。在本文实现的图中,顶点ABCDEFG按照顺序存储,因此先访问C。

第4步:访问E。

接下来访问C的出边的另一个顶点,即顶点E。

第5步:访问D。

接下来访问E的出边的另一个顶点,即顶点B,D。顶点B已经被访问过,因此访问顶点D。

第6步:访问F。

接下应该回溯&”访问A的出边的另一个顶点F&”。

第7步:访问G。

因此访问顺序是:A -&> B -&> C -&> E -&> D -&> F -&> G

广度优先搜索的图文介绍

1. 广度优先搜索介绍

广度优先搜索算法(Breadth First Search),又称为&”宽度优先搜索&”或&”横向优先搜索&”,简称BFS。

它的思想是:从图中某顶点v出发,在访问了v之后依次访问v的各个未曾访问过的邻接点,然后分别从这些邻接点出发依次访问它们的邻接点,并使得“先被访问的顶点的邻接点先于后被访问的顶点的邻接点被访问,直至图中所有已被访问的顶点的邻接点都被访问到。如果此时图中尚有顶点未被访问,则需要另选一个未曾被访问过的顶点作为新的起始点,重复上述过程,直至图中所有顶点都被访问到为止。

换句话说,广度优先搜索遍历图的过程是以v为起点,由近至远,依次访问和v有路径相通且路径长度为1,2&…的顶点。

2. 广度优先搜索图解

2.1 无向图的广度优先搜索

下面以&”无向图&”为例,来对广度优先搜索进行演示。还是以上面的图G1为例进行说明。

第1步:访问A。

第2步:依次访问C,D,F。

在访问了A之后,接下来访问A的邻接点。前面已经说过,在本文实现中,顶点ABCDEFG按照顺序存储的,C在&”D和F&”的前面,因此,先访问C。再访问完C之后,再依次访问D,F。

第3步:依次访问B,G。

在第2步访问完C,D,F之后,再依次访问它们的邻接点。首先访问C的邻接点B,再访问F的邻接点G。

第4步:访问E。

在第3步访问完B,G之后,再依次访问它们的邻接点。只有G有邻接点E,因此访问G的邻接点E。

因此访问顺序是:A -&> C -&> D -&> F -&> B -&> G -&> E

2.2 有向图的广度优先搜索

下面以&”有向图&”为例,来对广度优先搜索进行演示。还是以上面的图G2为例进行说明。

第1步:访问A。

第2步:访问B。

第3步:依次访问C,E,F。

在访问了B之后,接下来访问B的出边的另一个顶点,即C,E,F。前面已经说过,在本文实现中,顶点ABCDEFG按照顺序存储的,因此会先访问C,再依次访问E,F。

第4步:依次访问D,G。

在访问完C,E,F之后,再依次访问它们的出边的另一个顶点。还是按照C,E,F的顺序访问,C的已经全部访问过了,那么就只剩下E,F;先访问E的邻接点D,再访问F的邻接点G。

因此访问顺序是:A -&> B -&> C -&> E -&> F -&> D -&> G

“图的深度优先遍历算法(图的深度优先遍历定义)” 的相关文章

什么是信用贷款,一文快速了解其定义

信用贷款,俗称无抵押贷款。指的是商业银行或其他金融贷款机构按约定好的条件向贷款者贷出资金,到期收回本息的一种信用行为。今天,小编主要分享一下关于商业银行的信用贷...

seo快速优化软件有哪些,十款必备优化工具推荐

关于SEO排名软件这个东西是小编一直很神往的东西,早在2012年我刚接触SEO的时候,也没有任何人和我说过有这个事儿,还可以刷排名!但是就是在我刚接触的时候我的...

seo优化基础教学,seo零基础入门教程

经营你的电子商务商店确实不容易。你必须自己戴上所有的帽子——而且要熟练。你不再是一名员工,只负责一件事,而是成为了金融家、营销商、公关、技术大师、作家、物流经理...

佛洛依德梦的解析对应(梦的解析主要内容)

《梦的解析》是奥地利心理学家西格蒙得·弗洛伊德创作的心理学理论著作,又译做《解梦》。开创了弗洛伊德的“梦的解析”理论,被作者本人描述为“理解潜意识心理过程”的捷...

qq电台在哪里找,qq音乐电台主播收入

2017年11月29日,QQ音乐上线了有声电台节目《何她说》,这意味着其将发力有声电台领域。《何她说》是由演员白百何跨界主持的一档电台节目,在今年3月8日就已经...

个税怎么扣除标准(个人所得税征收标准)

2021年个税专项附加扣除即将截止这些天你一定在关心自己的年终奖、工资薪金以及劳务报酬等所得的个人所得税怎样扣缴还有哪些收入应缴个税?怎么汇算?最全个税税率表对...

iphone手机如何恢复出厂设置(苹果手机回到新机模式)

昨天,应该是部分老款iPhone用户值得开心的日子。因为跳票好多次,苹果公司终于推送了带有电池健康管理功能的iOS11.3版本系统;再者,就是iOS11.3正式...

word 破解版怎么打开(办公软件word破解版教程)

大家工作中是不是会遇到world文档被加密,有时是前辈刻意为之,有时是自己加密后忘记密码,总之,遇到这样的情况会非常的麻烦,简直讨厌至极。找专业人士还是如何,咋...

企业网站推广方案策划书,企业网站排名推广设计!

企业网站推广一直是众多站长关注的焦点。网站已经做了,但是不知道如何推广,或者已经做了一些推广,但是效果不明显,或者没有完美的推广理念。网站推广营销方式有很多种,...

pdf转换成word后怎么编辑文档中的表格,史上最详细教程

要说转换文档格式,大家可能还是的习惯性的使用电脑完成,但我们不能一直把电脑背在身上吧。所以今天就分享给大家一个使用手机就能实现PDF转Word、Excel、PP...