【程序人生】DFS——深度優先搜索算法

【程序人生】DFS——深度優先搜索算法

參考來源

https://blog.csdn.net/weixin_43272781/article/details/82959089
https://www.cnblogs.com/DWVictor/p/10048554.html

基本概念

深度優先搜索算法(Depth First Search,簡稱DFS):一種用於遍歷或搜索樹或圖的算法。 沿着樹的深度遍歷樹的節點,儘可能深的搜索樹的分支。當節點v的所在邊都己被探尋過或者在搜尋時結點不滿足條件,搜索將回溯到發現節點v的那條邊的起始節點整個進程反覆進行直到所有節點都被訪問爲止。屬於盲目搜索,最糟糕的情況算法時間複雜度爲O(!n)

算法思想

回溯法(探索與回溯法)是一種選優搜索法,又稱爲試探法,按選優條件向前搜索,以達到目標。但當探索到某一步時,發現原先選擇並不優或達不到目標,就退回一步重新選擇,這種走不通就退回再走的技術爲回溯法,而滿足回溯條件的某個狀態的點稱爲“回溯點”。

舉例

給出如下圖,求圖中的V0出發,是否存在一條路徑長度爲4的搜索路徑。
在這裏插入圖片描述
處理過程:
在這裏插入圖片描述

在這裏插入圖片描述

在這裏插入圖片描述

在這裏插入圖片描述

在這裏插入圖片描述
在這裏插入圖片描述

在這裏插入圖片描述

在這裏插入圖片描述

在這裏插入圖片描述

在這裏插入圖片描述

結語

如果您有修改意見或問題,歡迎留言或者通過郵箱和我聯繫。
手打很辛苦,如果我的文章對您有幫助,轉載請註明出處。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章