最小生成树KrusKal算法(并查集)
生活随笔
收集整理的這篇文章主要介紹了
最小生成树KrusKal算法(并查集)
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
洛谷p1111鏈接
克魯斯卡爾算法的思路就是由森林變成樹的過程,其中最主要的就是貪心和并查集的應(yīng)用。
我們知道鏈接n個點需要n-1條邊,這就滿足的最后生成的是一顆樹,而不是一個環(huán)。在這n-1條邊的選擇上我們又要盡可能的讓邊的權(quán)重小,于是我們不難想到先對邊的權(quán)重進(jìn)行升序排序。然后再去判斷這條邊的兩個點在不在一顆樹上,如果不在就連接這兩顆樹。 如果在就舍棄這條邊繼續(xù)找下一條邊,當(dāng)聯(lián)通的邊等于n-1時,這就是我呢最終得到的最小生成樹。也就是我們最后的答案。
下面時最后的代碼,
總結(jié)
以上是生活随笔為你收集整理的最小生成树KrusKal算法(并查集)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 车前草和蒲公英泡水喝的功效与作用、禁忌和
- 下一篇: 最小生成树Prime算法