當前位置:
首頁 >
LeetCode 1135. 最低成本联通所有城市(最小生成树+排序+并查集)
發布時間:2024/7/5
36
豆豆
生活随笔
收集整理的這篇文章主要介紹了
LeetCode 1135. 最低成本联通所有城市(最小生成树+排序+并查集)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
文章目錄
- 1. 題目
- 2. 解題
- 1. Kruskal
- 2. prim
1. 題目
想象一下你是個城市基建規劃者,地圖上有 N 座城市,它們按以 1 到 N 的次序編號。
給你一些可連接的選項 conections,其中每個選項 conections[i] = [city1, city2, cost] 表示將城市 city1 和城市 city2 連接所要的成本。(連接是雙向的,也就是說城市 city1 和城市 city2 相連也同樣意味著城市 city2 和城市 city1 相連)。
返回使得每對城市間都存在將它們連接在一起的連通路徑(可能長度為 1 的)最小成本。
該最小成本應該是所用全部連接代價的綜合。如果根據已知條件無法完成該項任務,則請你返回 -1。
示例 1:
示例 2:
來源:力扣(LeetCode)
鏈接:https://leetcode-cn.com/problems/connecting-cities-with-minimum-cost
著作權歸領扣網絡所有。商業轉載請聯系官方授權,非商業轉載請注明出處。
2. 解題
圖Graph–最小生成樹
1. Kruskal
- 將邊的權值排序,小的先遍歷,用并查集檢查兩個頂點是否合并了,沒有合并則將該邊加入生成樹
- 也可以使用優先隊列實現(相當于排序)
1504 ms 158.6 MB
2. prim
- 把一個初始頂點的所有邊加入優先隊列
- 取出最短的邊,把這條邊的另一個頂點相關的邊加入隊列
- 再取出最小的邊,重復下去,直到所有頂點加入過了
492 ms 40.9 MB
我的CSDN博客地址 https://michael.blog.csdn.net/
長按或掃碼關注我的公眾號(Michael阿明),一起加油、一起學習進步!
總結
以上是生活随笔為你收集整理的LeetCode 1135. 最低成本联通所有城市(最小生成树+排序+并查集)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: LeetCode 787. K 站中转内
- 下一篇: LeetCode 1548. The M