青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

yuanyuelang

常用鏈接

統(tǒng)計(jì)

最新評(píng)論

最小生成樹之Kruskal算法

最小生成樹是圖論的一個(gè)重要部分,解決這個(gè)問題的算法主要有Kruskal算法和Prim算法。

最小生成樹:顧名思義是一棵樹,該樹是圖中權(quán)值和最小的。

我們先來介紹Kruskal算法,Prim算法請(qǐng)參閱最小生成樹之Prim算法

該算法的基本思路:貪心,如何貪心呢?
它的貪心準(zhǔn)則是:
1.每次從剩下的邊中選擇一個(gè)不會(huì)產(chǎn)生環(huán)路而且權(quán)值最小的邊加入到已經(jīng)選擇好的邊的集合中。
2.它需要e步的操作,e表示圖的邊數(shù),我們可以按權(quán)值排好序后,對(duì)每一條邊進(jìn)行選擇,如果加入到已經(jīng)選擇好的邊中會(huì)產(chǎn)生回路的現(xiàn)象,就不要了。。。否則加入到已經(jīng)選擇好的邊中。
3.我們還需用到并查集的思想,有關(guān)并查集的介紹,請(qǐng)查看我的另一篇博文 不相交集合數(shù)據(jù)結(jié)構(gòu)
4.復(fù)雜度:O(ElgE),其中E為圖的邊數(shù)

接下來我們引用POJ上的一個(gè)經(jīng)典題目來分析,題目網(wǎng)址http://acm.pku.edu.cn/JudgeOnline/problem?id=1861

題目大意是:題目給出的是圖的頂點(diǎn)和所有邊的集合,要求輸出的是最小生成樹的邊

我們來看下源碼啦:
#include<iostream>
using namespace std;
#include
<algorithm>
#include 
<memory.h>

#define MAXEDGE 15001//最大邊數(shù)
#define MAXNODE 1001 //最大節(jié)點(diǎn)數(shù)

int p[MAXNODE],rank[MAXNODE];//用于不相交集合
int start[MAXEDGE],end[MAXEDGE],weight[MAXEDGE],VNum,ENum;//分別為邊的起點(diǎn),終點(diǎn),權(quán)重,節(jié)點(diǎn)數(shù)和邊數(shù)
int result_s[MAXEDGE],result_e[MAXEDGE];//分別為存儲(chǔ)最小生成樹的起點(diǎn),終點(diǎn)
int max_weight,id[MAXEDGE];

void make_set(int x)
{
    p[x]
=x;
    rank[x]
=0;
}


int find_set(int x)

    
if(p[x]!=x)
        p[x]
=find_set(p[x]);
    
return p[x];
}


void Union(int x,int y)
{
    x
=find_set(x);
    y
=find_set(y);
    
if(rank[x]>rank[y])
        p[y]
=x;
    
else if(rank[x]<rank[y])
        p[x]
=y;
    
else if(rank[x]==rank[y])
    
{
        p[x]
=y;
        rank[y]
++;
    }

}


bool cmp(int i,int j)//用于sort函數(shù)
{
    
return weight[i]<weight[j];
}

void Kruskal()
{
    
int i,min,index=0,count=0,k=0;
    
    max_weight
=0;
        
for(i=1;i<=VNum;i++)
          make_set(i);
    
        sort(id,id
+ENum,cmp);//對(duì)所有邊進(jìn)行排序,注意id數(shù)組的妙用
    while(true){
      min
=id[index++];
      
if(find_set(start[min])!=find_set(end[min]))//對(duì)每條邊進(jìn)行處理,如果起點(diǎn)和終點(diǎn)不在同一集合合并之
        Union(start[min],end[min]);
        result_s[k]
=start[min];//保存結(jié)果
                result_e[k++]=end[min];
                count
++;
        
if(max_weight<weight[min])
                max_weight
=weight[min];
       }

      
        
if(count==VNum-1break;//當(dāng)邊數(shù)等于節(jié)點(diǎn)數(shù)-1的時(shí)候表示已經(jīng)完成
    }

}






int main()
{
    
int i;
    cin
>>VNum>>ENum;
    
for(i=0;i<ENum;i++){
        cin
>>start[i]>>end[i]>>weight[i];
        id[i]
=i;
    }

        Kruskal();
        cout
<<max_weight<<endl<<VNum-1<<endl;
        
for(i=0;i<VNum-1;i++)
       cout
<<result_s[i]<<" "<<result_e[i]<<endl;
   
        
return 0;
}


posted on 2009-09-13 21:18 原語餓狼 閱讀(712) 評(píng)論(0)  編輯 收藏 引用 所屬分類: 圖論

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            久久亚洲欧美国产精品乐播| 欧美成人久久| 久久久久国内| 久久精品成人一区二区三区| 亚洲乱码精品一二三四区日韩在线 | 久久综合九色综合网站| 亚洲综合清纯丝袜自拍| 艳女tv在线观看国产一区| 亚洲欧洲精品一区二区三区不卡| 国产亚洲欧美激情| 在线观看精品一区| 亚洲精品欧洲精品| 亚洲一区二区成人| 久久天天躁狠狠躁夜夜爽蜜月| 久久综合伊人77777蜜臀| 另类综合日韩欧美亚洲| 欧美国产视频日韩| 亚洲视频综合| 玖玖玖国产精品| 欧美日韩精品伦理作品在线免费观看| 欧美日韩亚洲一区二| 国产精品视频久久| 亚洲电影毛片| 亚欧美中日韩视频| 欧美激情一区二区三区全黄| 亚洲激情影院| 亚洲一区二区四区| 免费在线看一区| 国产乱码精品一区二区三区不卡 | 欧美激情综合亚洲一二区| 欧美日韩中文字幕精品| 国产日韩欧美二区| 亚洲视频欧美在线| 欧美激情女人20p| 亚洲免费婷婷| 欧美日韩在线精品一区二区三区| 国产欧美精品日韩| 一区二区三区精品| 欧美电影在线观看| 久久国产精品久久精品国产 | 亚洲精品精选| 久久蜜桃精品| 国产一区在线播放| 亚洲一区二区三区免费在线观看| 久久久高清一区二区三区| 亚洲精品久久视频| 久久久免费精品视频| 国产精品视频大全| 亚洲一区欧美一区| av成人福利| 久久这里只有精品视频首页| 男女精品视频| 亚洲欧美综合精品久久成人| 久久精品国产一区二区三| 欧美日韩专区| 99一区二区| 亚洲黄色天堂| 另类图片综合电影| 在线观看不卡| 久久米奇亚洲| 久久久欧美精品sm网站| 国产一区二区av| 欧美一区二区性| 亚洲欧美一区二区三区极速播放| 欧美日韩另类字幕中文| 亚洲电影免费在线观看| 欧美一区二区在线免费播放| 亚洲高清在线视频| 欧美精品成人一区二区在线观看 | 亚洲精品乱码久久久久久久久| 久久久久久久成人| 在线观看日产精品| 最新国产成人av网站网址麻豆| 免费欧美在线| 99re6这里只有精品| 亚洲国产午夜| 欧美日韩天天操| 亚洲男女自偷自拍图片另类| 91久久久久久| 欧美性色aⅴ视频一区日韩精品| 在线视频日本亚洲性| 亚洲精品美女在线| 国产精品久久久久久久久久三级| 亚洲欧美日韩精品综合在线观看| 亚洲一级二级| 一区二区视频免费在线观看| 久久精品一区二区三区中文字幕| 久久动漫亚洲| 亚洲乱亚洲高清| 亚洲午夜久久久| 亚洲国产精品99久久久久久久久| 欧美国产精品| 国产精品久久久久久模特| 久久久国产精品一区二区三区| 久久久久www| 一区二区三区国产精品| 这里只有精品丝袜| 亚洲永久字幕| 久久久久久久一区| 亚洲毛片在线免费观看| 一本久道久久综合婷婷鲸鱼| 欧美日韩成人在线| 久久久免费精品视频| 欧美风情在线观看| 久久9热精品视频| 欧美国产一区二区在线观看 | 亚洲影院色在线观看免费| 亚洲无毛电影| 亚洲精品护士| 亚洲一区二区综合| 亚洲麻豆一区| 久久精品人人爽| 午夜视频在线观看一区| 美女视频一区免费观看| 亚洲欧美日本视频在线观看| 香蕉成人伊视频在线观看| 亚洲伦理在线观看| 久久久夜夜夜| 久久av一区二区三区亚洲| 欧美精品一区在线播放| 久久久99爱| 国产伦精品一区二区三区视频黑人 | 国产精品无码永久免费888| 久久先锋影音| 国产精品久久久久久久久久久久 | 久久人人爽爽爽人久久久| 亚洲欧美视频在线| 欧美日韩1080p| 亚洲黄一区二区| 亚洲人成在线影院| 久久久水蜜桃| 免费看亚洲片| 一区二区在线观看视频| 正在播放欧美一区| 亚洲视频一区在线| 欧美午夜在线视频| 中文av一区二区| 亚洲欧美另类国产| 国产精品高清免费在线观看| 欧美黑人一区二区三区| 一区二区视频免费在线观看 | 亚洲欧美日本伦理| 欧美永久精品| 国产一区二区日韩精品欧美精品 | 日韩午夜三级在线| 亚洲午夜久久久久久尤物 | 中文av一区二区| 欧美在线免费看| 另类图片综合电影| 这里只有精品电影| 国产精品国产精品国产专区不蜜| 亚洲国产日韩在线| 亚洲最新视频在线播放| 欧美日韩国产成人在线免费| 欧美~级网站不卡| 亚洲国产精品va在线看黑人 | 99亚洲一区二区| 亚洲欧美激情视频| 国产日韩欧美在线观看| 欧美一级午夜免费电影| 久久久亚洲综合| 亚洲精品一级| 国产精品激情av在线播放| 亚洲一区二区在线看| 欧美一区激情| 亚洲高清视频在线观看| 欧美人妖在线观看| 午夜精品久久久99热福利| 久久爱91午夜羞羞| 亚洲国产精品久久久久秋霞蜜臀| 欧美高清日韩| 亚洲欧美日韩网| 欧美激情视频一区二区三区不卡| 亚洲精品在线观| 国产精品一区二区欧美| 久久精品视频在线| 亚洲精品中文字幕在线观看| 亚洲精品日韩久久| 国产日韩欧美黄色| 欧美日韩激情小视频| 亚洲综合第一页| 亚洲高清视频在线观看| 亚洲男女自偷自拍图片另类| 国产精品亚洲产品| 欧美精品18videos性欧美| 亚洲欧美日韩直播| 亚洲日韩中文字幕在线播放| 一本色道久久88精品综合| 国产日韩欧美精品一区| 欧美精品麻豆| 久久天堂av综合合色| 一本大道久久a久久综合婷婷| 久久黄色网页| 亚洲一区欧美二区| 99国产精品私拍| 亚洲激情在线视频| 黄色av日韩| 国产一区亚洲一区| 国产伦精品一区二区三区在线观看 | 亚洲精品视频二区|