各位大大好 小弟最近在複習深度優先搜尋(DFS)時發現了個問題
一直以來我對DFS的理解是只要該點還能走向下一個節點就繼續走 若無路可走或是下個節
點都走過了就回到上一個節點
直到我看了這篇文章
https://ithelp.ithome.com.tw/m/articles/10281404?sc=iThelpR
以此圖為例
https://i.imgur.com/sKefHNC.jpg
假設我已經走訪了AEC三個點(以A為起點)照我的想法應該先把B走訪完再回到E點往下走
也就是AECB 應該沒有別的選擇才對
可是若用文章作者stack的方式去實作
B卻是最後才走訪
主要原因在於走訪A的時候 B就被放在stack最底下 導致了B一定是最後走訪嗎?
這問題讓我好疑惑
小的初學 若有觀念錯誤的地方再麻煩指教