Floyd-Warshall算法描述
1)適用范圍:
a)APSP(All Pairs Shortest Paths)
b)稠密圖效果最佳
c)邊權可正可負
2)算法描述:
a)初始化:dis[u,v]=w[u,v]
b)For k:=1 to n
For i:=1 to n
For j:=1 to n
If dis[i,j]>dis[i,k]+dis[k,j] Then
Dis[I,j]:=dis[I,k]+dis[k,j]
c)算法結束:dis即為所有點對的最短路徑矩陣
3)算法小結:此算法簡單有效,由于三重循環結構緊湊,對于稠密圖,效率要高于執行|V|次Dijkstra算法。時間復雜度O(n^3)。
考慮下列變形:如(I,j)∈E則dis[I,j]初始為1,else初始為0,這樣的Floyd算法最后的最短路徑矩陣即成為一個判斷I,j是否有通路的矩陣。更簡單的,我們可以把dis設成boolean類型,則每次可以用“dis[I,j]:=dis[I,j]or(dis[I,k]and dis[k,j])”來代替算法描述中的藍色部分,可以更直觀地得到I,j的連通情況。
標簽:
Floyd-Warshall
Shortest
Pairs
Paths
上傳時間:
2013-12-01
上傳用戶:dyctj
一個動態可視化的MCS-51全功能模擬器,此模擬器可以讓您在PC機上模擬運行MCS-51程序就如同在硬體上一樣.
這模擬器提供8KB的程序空間,256字節的RAM,16KB的XRAM,2個16位的定時/計數器(T0與T1),一個實時時鐘,一個 5x6 的小鍵盤,一個 128x64 點陣的 LCD,一個音頻發生器,一個串口,一個打印口,和5個有兩個優先級的中斷源,并且程序以固定的 12MHz 時鐘運行.再附上四個 Keil C51 的例程,KeyPad(演示KeyPad使用),Music(模擬器演奏音樂),Picture(LCD圖形演示),Proc24c02(使用此模擬器從電腦打印口讀寫24C02)等.. 再附上取圖程序方便LCD圖片程序應用.
標簽:
MCS
51
XRAM
模擬
上傳時間:
2013-12-13
上傳用戶:葉山豪