<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    waysun一路陽光

    不輕易服輸,不輕言放棄.--心是夢的舞臺,心有多大,舞臺有多大。踏踏實實做事,認認真真做人。

      BlogJava :: 首頁 :: 新隨筆 :: 聯系 ::  :: 管理 ::
      167 隨筆 :: 1 文章 :: 64 評論 :: 0 Trackbacks
    來源:http://blog.chinaunix.net/u1/50399/showart_407408.html
    /*
     * @input: 一個有向無環帶權圖,表述為一個二維數組graph[n][n]
     * @output: 最小生成樹tree[n-1][3],tree[i][0]及tree[i][1]為邊之頂點,tree[i][2]為權
     */
    public class MiniSpanTreeTest
    {  
       static int[][] graph={
           {1000,6,1,5,1000,1000},
           {6,1000,5,1000,3,1000},
           {1,5,1000,5,6,4},
           {5,1000,5,1000,1000,2},
           {1000,3,6,1000,1000,6},
           {1000,1000,4,2,6,1000},
       };
       static int v=0;
       static int[][] tree;
       public static void main(String[] args)
       {
           MiniSpanTree miniSpanTree=new MiniSpanTree();
           miniSpanTree.input(graph, v);
           tree=miniSpanTree.getTree();
           for(int i=0; i<graph.length-1; i++){
               System.out.println("邊:" + tree[i][0] + "-" + tree[i][1] + "  權:" + tree[i][2]);
           }
       }
    }
    class MiniSpanTree
    {
        private int[][] graph;
        private int v;
        private int[][] tree;
        private boolean[] s;
        void input(int[][] graph, int v)
        {
            this.graph=graph;
            this.v=v;
            tree=new int[graph.length-1][];
            s=new boolean[graph.length];
            for(boolean i : s) i=false;
            s[v]=true;
            calculate();
        }
        void calculate()
        {
            for(int i=0; i<graph.length-1; i++){
                int[][] edge ={{0,0,1000,},};
                for(int j=0; j<graph.length; j++){
                    for(int k=0; s[j]==true && k<graph.length; k++){
                        if(s[k]==false && graph[j][k]<edge[0][2]){
                            edge[0][0]=j;
                            edge[0][1]=k;
                            edge[0][2]=graph[j][k];
                        }
                    }
                }
                tree[i]=edge[0];
                s[tree[i][1]]=true;
            }
        }
        int[][] getTree()
        {
            return tree;
        }
    }
     
    結果如下:
    邊:0-2  權:1
    邊:2-5  權:4
    邊:5-3  權:2
    邊:2-1  權:5
    邊:1-4  權:3
    posted on 2009-04-15 22:20 weesun一米陽光 閱讀(369) 評論(0)  編輯  收藏 所屬分類: JAVA源碼總結備用
    主站蜘蛛池模板: 一个人晚上在线观看的免费视频| jjizz全部免费看片| 亚洲国产综合专区在线电影 | 精品国产免费一区二区三区香蕉| 久久亚洲AV成人出白浆无码国产| 成人影片麻豆国产影片免费观看 | 亚洲真人无码永久在线观看| 亚洲性日韩精品一区二区三区| 蜜桃视频在线观看免费视频网站WWW| 亚洲中文字幕久久精品无码VA | 亚洲AV成人一区二区三区AV| 成人免费视频观看无遮挡| 国产三级在线免费观看| 亚洲人成高清在线播放| 亚洲色精品aⅴ一区区三区| 国产成人午夜精品免费视频| 十八禁视频在线观看免费无码无遮挡骂过| 亚洲一级毛片免费看| 在线精品亚洲一区二区三区| 黄色成人网站免费无码av| 免费观看91视频| 在线观看亚洲电影| 亚洲精品高清国产麻豆专区| 亚洲无av在线中文字幕| 夜夜爽免费888视频| 99久久久国产精品免费牛牛| 深夜久久AAAAA级毛片免费看| 亚洲同性男gay网站在线观看| 中文字幕精品无码亚洲字| 女人被男人桶得好爽免费视频| 男女午夜24式免费视频| 牛牛在线精品观看免费正 | 亚洲色图古典武侠| 亚洲一区精品伊人久久伊人| 夫妻免费无码V看片| 中文字幕免费在线看线人 | 国产精品亚洲一区二区三区在线观看| 亚洲第一精品电影网| 亚洲av无码潮喷在线观看| 亚洲成a人无码av波多野按摩| 精品国产免费一区二区|