深度優先遍歷和寬度優先遍歷
深度優先遍歷和寬度優先遍歷是數據結構中兩種常見的遍歷方式,通常見於圖和樹的遍歷問題中【當然,樹可以看成簡單的圖】。本文從概念開始將起,然後通過Python開始進行簡單實戰與講解,能夠力爭一篇文章可以幫大家弄明白這個問題。
深度優先遍歷和寬度優先遍歷的概念
圖的BFS和DFS
先開始圖的BFS和DFS講解。
所謂BFS,是指寬度優先遍歷,即Breadth First Search 的簡稱,顧名思義,從寬度開始遍歷。在圖中,寬度是指當前節點的鄰接矩陣。我們舉個例子。