當前位置:編程學習大全網 - 編程軟體 - 第三章 路徑分析算法——基於Floyd算法的路徑分析

第三章 路徑分析算法——基於Floyd算法的路徑分析

Floyd算法是壹種用於在已知給定的加權圖中求多源點之間最短路徑的算法。它於Diskstra算法類似,不同點在於Diskstra計算的是單源點之間的最短路徑。Floyd算法是在數學建模領域和日常工作中使用頻率較高的路徑分析算法。

Floyd作為壹種典型的求多源最短路徑問題的算法,是解決任意兩個點之間最短路徑的算法,它的思想是基於動態規劃的思想。

見——第壹章 算法基礎——基礎算法分析類型。

Floyd的核心思想也是基於動態規劃的理論,過程也比較簡單。

設 表示為i點到j點過程中以(1…k)集合中的節點為中間節點的最短路徑長度,則:

(1)若最短路徑經過點k,則 = + ;

(2)若最短路徑不經過點k,則 = 。

於是 = .

Floyd算法的時間復雜度為 ,空間復雜度為 。

  • 上一篇:小學壹年級學費收費標準2022
  • 下一篇:編程只讀
  • copyright 2024編程學習大全網