Kruskal解決最小生成樹問題

Kruskal解決最小生成樹問題

  1. 問題
    給定一個有若干邊和頂點構成的圖,從中選則部分邊構成樹,且樹的權值要最小。
  2. 解析
    在這裏插入圖片描述
  3. 設計
    Void Kruskal(MGraph)
    { T ={}
    While(T中不到n-1條邊&&E中還有邊)
    {從E中抽取一條權值最小的邊
    將E(s,e)從E中刪除;
    If(E(s,e)不在T中構成迴路)
    將E加入T
    Else
    繼續循環
    }
    }
  4. 分析
    O(ElogE)
  5. 源碼 https://github.com/CunHua-YYT/CunHua-YYT/blob/master/Kruskal.cpp