圖的兩種遍歷
圖是一種復雜的非線形的結(jié)構(gòu),和樹的遍歷類似,圖的遍歷也是從某個頂點出發(fā),沿著某條搜索路徑對圖中每個頂點各做一次且僅做一次訪問。它是許多圖的算法的基礎(chǔ)。???
深度優(yōu)先遍歷和廣度優(yōu)先遍歷是最為重要的兩種遍歷圖的方法。它們對無向圖和有向圖均適用。
如果把圖的遍歷想成走迷宮的話,那么他們的思路是這樣的:
深度優(yōu)先遍歷是一種縱向方法,它的思路是:沿著一條路走到頭,直到碰到“臉”,然后在退出來去另尋其他路,直到發(fā)現(xiàn)所有的路都以走完為止。
廣度優(yōu)先遍歷是一種橫向方法,它的思路是:從起點開始,假如我面前有三條路,那么我三條路都走一下,然后看看是不是能走出去,假如不行,那我就從我走的第一條路再去找其他的路子,方法和第一次一樣,找完之后再去第二條路找其他路子,如此反復,就像打仗的步步為營,層層推進一樣,直到最后找完所有的路子。
方法雖然不同,但是效果確實一樣的。
posted on 2007-02-18 15:44 xiaobailong 閱讀(477) 評論(0) 編輯 收藏