無向圖的最短路徑算法 試?yán)肈ijkstra算法求圖中從頂點(diǎn)a到其他各頂點(diǎn)間的最短路徑,寫出執(zhí)行算法過程中各步的狀態(tài)?
試?yán)肈ijkstra算法求圖中從頂點(diǎn)a到其他各頂點(diǎn)間的最短路徑,寫出執(zhí)行算法過程中各步的狀態(tài)?1c:22c:2f:63c:2f:6e:104c:2f:6e:10d:115c:2f:6e:10d:11
試?yán)肈ijkstra算法求圖中從頂點(diǎn)a到其他各頂點(diǎn)間的最短路徑,寫出執(zhí)行算法過程中各步的狀態(tài)?
1c:2
2c:2f:6
3c:2f:6e:10
4c:2f:6e:10d:11
5c:2f:6e:10d:11g:14
6c:2f:6e:10d:11g:14b:15
首先,在不考慮時(shí)間復(fù)雜度的情況下,在圖論中尋找最短路徑也是同樣的問題。這個(gè)基本問題也可以推廣到許多其他的理論或?qū)嵺`問題。
最短路徑問題有一個(gè)理想的時(shí)間復(fù)雜度(<=O(n^2)),但是如果我們找到圖中任意兩點(diǎn)之間的距離,特別是當(dāng)圖是稠密的時(shí)候,F(xiàn)loyd的O(n^3)就不比其他問題小。
Floyd的另一個(gè)優(yōu)勢(shì)是易于編寫。完成了插點(diǎn)、三循環(huán)、一判斷、五要素的簡(jiǎn)單構(gòu)思。Dijkstra在堆優(yōu)化和SPFA之后需要大約50行代碼。