• <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>

            ArcTan

            dfs
            隨筆 - 16, 文章 - 117, 評論 - 6, 引用 - 0
            數(shù)據(jù)加載中……

            poj1258(最小生成樹)



            最小生成樹。Prim或者Kruskal。

            以下Prim算法,輸入矩陣:

            #include<stdio.h>
                
            int  d[103][103],flag[103],lowcost[103],link[103],a[103],b[103];
            int main()
            {
                
            int n,i,j,min,minj,tot;
                
            while (scanf("%d",&n)==1)
                {
                    
            for (i=1;i<=n;i++)
                        
            for (j=1;j<=n;j++)
                            scanf(
            "%d",&d[i][j]);
                
                    
            for (i=1;i<=n;i++)
                    {
                        flag[i]
            =1;
                        lowcost[i]
            =1000000;
                        link[i]
            =1;
                    }
                    
            for (i=1;i<=n;i++)
                        
            if (d[1][i])
                            lowcost[i]
            =d[1][i];
                    flag[
            1]=0;tot=0;
                    
            for (i=2;i<=n;i++)
                        {
                            min
            =1000000;
                            
            for (j=2;j<=n;j++)
                                
            if (flag[j]&&min>lowcost[j])
                                {
                                    min
            =lowcost[j];
                                    minj
            =j;
                                }
                            flag[minj]
            =0;tot+=min;
                            
            for (j=2;j<=n;j++)
                                
            if (flag[j]&&d[minj][j]&&lowcost[j]>d[minj][j])
                                {
                                    lowcost[j]
            =d[minj][j];
                                    link[j]
            =minj;
                                }
                        }
                
                    printf(
            "%d\n",tot);
                }
            }


            哦哦,a[],b[]用來記錄生成樹的邊的。這里沒有用上。啊,n^2,這個復(fù)雜度不行啊,得學(xué)學(xué)高級的方法才行啊。

            posted on 2012-03-04 00:49 wangs 閱讀(266) 評論(0)  編輯 收藏 引用 所屬分類: ACM-201203

            1000部精品久久久久久久久| 久久久久久久久66精品片| 国产精品美女久久久久| 国产精品久久久久久久午夜片| 伊人久久国产免费观看视频| 久久综合精品国产二区无码| 久久人人爽人人爽人人片AV麻豆| 久久精品国产色蜜蜜麻豆| 大美女久久久久久j久久| 久久久免费精品re6| 亚洲成av人片不卡无码久久 | 2021最新久久久视精品爱| 国产一久久香蕉国产线看观看 | 久久精品国产亚洲AV麻豆网站 | 国产精品久久国产精品99盘| 日韩精品久久久久久久电影| 久久93精品国产91久久综合| 国产亚洲精品自在久久| 亚洲国产精品无码久久一区二区| 人妻系列无码专区久久五月天| 久久综合丝袜日本网| 狠狠色丁香婷婷久久综合不卡| 人妻精品久久无码区| 国产精品久久久久a影院| 久久久亚洲精品蜜桃臀| 久久久久久久久久免免费精品| 精品人妻伦九区久久AAA片69| 久久天堂电影网| 91久久精品视频| 久久国产成人午夜AV影院| 国产 亚洲 欧美 另类 久久| 国产精品熟女福利久久AV| 国产成人精品久久亚洲| 精品无码久久久久久久动漫| 精品国产青草久久久久福利 | 尹人香蕉久久99天天拍| 一本大道久久香蕉成人网| 国产精品成人久久久| 午夜精品久久久久久99热| 99久久精品国产麻豆| 国产免费福利体检区久久|