深度優先搜索

深度優先搜索算法  是一種用於遍歷或搜索樹或圖的算法 。 這個算法會盡可能深地搜索樹的分支 。 當節點v的所在邊都己被探尋過 ， 搜索將回溯到發現節點v的那條邊的起始節點 。 這一過程一直進行到已發現從源節點可達的所有節點爲止 。 如果還存在未被發現的節點 ， 則選擇其中一個作爲源節點並重復以上過程 ， 整個進程反覆進行直到所有節點都被訪問爲止 。 。 深度優先搜索是圖論中的經典算法 ， 利用深度優先搜索算法可以產生目標圖的拓撲排序表 ， 利用拓撲排序表可以方便的解決很多相關的圖論問題 ， 如無權最長路徑問題等等 。 因發明 “ 深度優先搜索算法 ” ， 約翰 · 霍普克洛夫特與羅伯特 · 塔揚在1986年共同獲得計算機領域的最高獎 ： 圖靈獎 。