• Dijkstra算法 (单源最短路径)
    • 思想:贪心策略。按路径长度递增的次序产生最短路径。
    • 步骤*:
      1. 初始集合 ,距离数组 初始为直达距离。
      2. 选出 中最小且不在 中的顶点 ,加入
      3. 为中间点,松弛(更新)其他顶点的距离:若 ,则更新。
    • 限制不能处理负权边
    • 复杂度
  • Floyd算法 (多源最短路径)
    • 思想:动态规划。逐个尝试将顶点 作为中间跳板。
    • 核心公式
    • 复杂度