国产成人毛片视频|星空传媒久草视频|欧美激情草久视频|久久久久女女|久操超碰在线播放|亚洲强奸一区二区|五月天丁香社区在线|色婷婷成人丁香网|午夜欧美6666|纯肉无码91视频

prim算法和kruskal算法 kruskal算法怎么做?

kruskal算法怎么做?Kruskal可以在邊數(shù)較少時(shí)使用,因?yàn)镵ruskal算法每次都能找到最短的邊。Prim可以在有多條邊的情況下使用,因?yàn)樗淮翁砑右粋€(gè)頂點(diǎn),這適用于有多條邊的情況。prim算

kruskal算法怎么做?

Kruskal可以在邊數(shù)較少時(shí)使用,因?yàn)镵ruskal算法每次都能找到最短的邊。Prim可以在有多條邊的情況下使用,因?yàn)樗淮翁砑右粋€(gè)頂點(diǎn),這適用于有多條邊的情況。

prim算法和kruscal算法的區(qū)別?

Prim算法:

Prim算法將所有頂點(diǎn)分為A和B兩部分。A是目標(biāo)集。該算法可以看作是一個(gè)不斷地將B中的頂點(diǎn)轉(zhuǎn)移到一個(gè)集合的過程。在這個(gè)過程中,從B中的每個(gè)頂點(diǎn)到樹的最短距離是不斷更新和排序的。根據(jù)貪心思想,將無環(huán)最短路徑的頂點(diǎn)從B移到a,Prim算法是在加權(quán)連通圖中尋找最小生成樹,即權(quán)值最小且連通到所有節(jié)點(diǎn)的樹。重點(diǎn)放在樹上,樹沒有環(huán)。

Prim算法是這樣做的:

首先將一個(gè)節(jié)點(diǎn)作為最小生成樹的初始節(jié)點(diǎn),然后迭代求出最小生成樹中每個(gè)節(jié)點(diǎn)的最小權(quán)邊,并將其加入到最小生成樹中。如果連接后生成循環(huán),請(qǐng)?zhí)^此邊并選擇下一個(gè)節(jié)點(diǎn)。當(dāng)所有連接的節(jié)點(diǎn)都添加到生成樹中時(shí),就會(huì)找到最小值。

2、Kruskal算法:

kruska算法將多個(gè)頂點(diǎn)分成N個(gè)部分。該算法可以看作是一個(gè)連續(xù)合并n個(gè)部分的過程。在此過程中,根據(jù)權(quán)值對(duì)多條邊進(jìn)行排序,然后根據(jù)貪婪思想對(duì)權(quán)值最短且無循環(huán)的頂點(diǎn)進(jìn)行合并。

Kruskal算法和prim算法的區(qū)別在于,Kruskal需要將所有權(quán)重邊從小到大排序,然后才能找到最小的生成樹節(jié)點(diǎn)。排序后的加權(quán)邊依次添加到最小生成樹中。如果添加時(shí)生成循環(huán),將跳過此邊并添加下一條邊。當(dāng)所有節(jié)點(diǎn)都加入到最小生成樹中時(shí),就會(huì)找到最小生成樹。

毫無疑問,Kruskal算法比prim算法在效率上更快,因?yàn)镵ruskal只需要對(duì)加權(quán)邊進(jìn)行一次排序,而prim算法需要對(duì)加權(quán)邊進(jìn)行多次排序。盡管prim算法所涉及的加權(quán)邊可能不能覆蓋連通圖中的所有邊,但隨著排序算法效率的提高,Kruskal算法與prim算法的區(qū)別將更加明顯。