五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

機試小課堂 | 圖論·例題講解③《繼續(xù)暢通工程》

2021-04-18 15:36 作者:蘇世考研  | 我要投稿


蘇世計算機考研,程序猿專屬的學習分享社區(qū)


蘇世機試小課堂,考研機試不再慌!


繼續(xù)暢通工程

題目描述

某省調(diào)查鄉(xiāng)村交通狀況,得到的統(tǒng)計表中列出了任意兩村莊間的距離。省政府“暢通工程”的目標是使全省任何兩個村莊間都可以實現(xiàn)公路交通(但不一定有直接的公路相連,只要能間接通過公路可達即可),并要求鋪設的公路總長度為最小。請計算最小的公路總長度。


輸入描述

測試輸入包含若干測試用例。每個測試用例的第1行給出村莊數(shù)目N ( < 100 );隨后的N(N-1)/2行對應村莊間的距離,每行給出一對正整數(shù),分別是兩個村莊的編號,以及此兩村莊間的距離。為簡單起見,村莊從1到N編號。

當N為0時,輸入結(jié)束,該用例不被處理。


輸出描述

對每個測試用例,在1行里輸出最小的公路總長度。


輸入

3

1 2 1

1 3 2

2 3 4

4

1 2 1

1 3 4

1 4 1

2 3 3

2 4 2

3 4 5

0


輸出

3

5


答案


①讀題:

給出村莊之間的距離,選出最短的距離組合可以連通所有村莊。


②想出思路:

最小生成樹題目,把所有邊存下來,按長度進行排序,記錄每個節(jié)點的父節(jié)點,每次找剩余長度最小的邊,并查找邊兩個端點是不是在同一個集合中,不在的話就加入生成樹,在的話就跳過,最后加入n-1條邊就可以了。


③動手編程:


④測試樣例:


⑤提交代碼:

進入下面的鏈接提交代碼(或點擊閱讀原文)

https://www.nowcoder.com/practice/d6bd75dbb36e410995f8673a6a2e2229?tpId=40&&tqId=21479&rp=1&ru=/ta/kaoyan&qru=/ta/kaoyan/question-ranking


⑥返回評測結(jié)果:

至此,這道題我們就已經(jīng)完成了。


本題總結(jié)

本題是kruskal算法模板題,主要是學習這種思路,學習如何寫Find(),unite(),kruskal()函數(shù),代碼中的細節(jié)也需要自己一點點動手去嘗試才能深刻理解。


蘇世學社旗下品牌,專注于計算機考研

計算機考研一手資訊,原創(chuàng)高質(zhì)量干貨

深度的學習分享丨咨詢前輩丨個性化指導


機試小課堂 | 圖論·例題講解③《繼續(xù)暢通工程》的評論 (共 條)

分享到微博請遵守國家法律
奈曼旗| 嘉荫县| 商丘市| 卢氏县| 光泽县| 黎川县| 黑水县| 砀山县| 霍林郭勒市| 德格县| 会同县| 桦甸市| 定边县| 台山市| 汶上县| 淳安县| 兰坪| 满城县| 泸西县| 齐河县| 西乌珠穆沁旗| 新晃| 昌乐县| 汽车| 英山县| 游戏| 镇平县| 和林格尔县| 太白县| 新安县| 同德县| 建湖县| 芒康县| 池州市| 广元市| 丰台区| 明光市| 仁怀市| 云林县| 拜泉县| 嘉祥县|