• <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
            數據加載中……

            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,這個復雜度不行啊,得學學高級的方法才行啊。

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

            久久久久亚洲AV无码麻豆| 一本久久a久久精品综合夜夜| 国产成人精品久久综合| 99久久精品国产一区二区| 99久久国产综合精品五月天喷水| 国产精品免费看久久久香蕉 | 亚洲精品高清一二区久久| 久久久久久精品免费看SSS| 精品国际久久久久999波多野| 久久国产精品波多野结衣AV| 久久亚洲AV成人无码国产| 精品国产青草久久久久福利| 久久只有这精品99| 2020最新久久久视精品爱| 久久久久亚洲?V成人无码| 亚洲综合精品香蕉久久网97| 久久久久亚洲国产| 丁香久久婷婷国产午夜视频| 色婷婷综合久久久久中文一区二区| 久久青青草原综合伊人| 亚洲精品无码久久千人斩| 一本久道久久综合狠狠躁AV| 久久青青草原精品影院| 久久久久久久97| 日韩久久久久久中文人妻| 无码8090精品久久一区| 精品久久久久久久国产潘金莲 | 亚洲精品国精品久久99热| 777米奇久久最新地址| 久久综合给合久久狠狠狠97色| 久久激情五月丁香伊人| 日本福利片国产午夜久久| 久久精品国产清高在天天线| 亚洲乱码中文字幕久久孕妇黑人| 无码任你躁久久久久久| 久久精品成人欧美大片| 久久狠狠一本精品综合网| 人妻系列无码专区久久五月天| 蜜臀久久99精品久久久久久| 久久久久久国产精品免费免费 | 激情综合色综合久久综合|