在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            新聞中心

            EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > C++的CIN和COUT操作符的方法

            C++的CIN和COUT操作符的方法

            作者: 時(shí)間:2011-09-02 來源:網(wǎng)絡(luò) 收藏

            主要代碼如下: #include
            using namespace std;
            const int MAX_EDGE = 100;
            const int MAX_NODE = 100;
            /*
            定義一條邊
            */
            typedef struct{
            int v;
            int t;
            int weight;
            bool isMST;
            }Edge;
            /*
            有關(guān)算法的一些變量
            */
            Edge edges[MAX_EDGE];
            int nodeSet[MAX_EDGE];
            const int MSTSetNum = -1;
            int edgeNum;
            bool nodeIsMST[MAX_NODE];
            int Exchange(Edge *a,Edge *b)
            {
            Edge t;
            t = *a;
            *a = *b;
            *b = t;
            return 0;
            }
            /*
            實(shí)現(xiàn)快速排序算法quick_sort
            */
            int partition(Edge*edges,int p,int r)
            {
            int i = p-1,j = p;
            for(;j
            {
            if(edges[j].weight = edges[r].weight)
            {
            i++;
            exchange(edges+i,edges+j);
            }
            }
            exchange(edges[i+1],edges[r]);
            return i+1;
            }
            int quick_sort(Edge edges[],int p,int r)
            {
            if(p  r)
            {
            int q = partition(edges,p,r);
            quick_sort(edges,p,q-1);
            quick_sort(edges,q+1,r);
            }
            return 0;
            }
            void Initialize(int nodeSet[],int edgeNum);
            void MST_Kruskal(int n);
            void test();
            int main()
            {
            test();
            return 0;
            }
            void Initialize(int nodeSet[],int n)
            {
            if(edgeNum > MAX_EDGE)
            {
            printf(The total num of edges must be less than %dn,MAX_EDGE);
            exit(EXIT_FAILURE);
            }
            else
            {
            int i = 0;
            edgeNum = n;
            for(;i
            {
            nodeSet[i] = i;
            }
            }
            }
            void MST_Kruskal(int n)
            {
            Initialize(nodeSet,n);
            quick_sort(edges,0,edgeNum-1);
            int i;
            for(i = 0;i
            {
            if(nodeSet[edges[i].v]!=nodeSet[edges[i].t])
            {
            edges[i].isMST = true;
            if(i==7)
            i = i;
            if(nodeIsMST[edges[i].v] || nodeIsMST[edges[i].t])
            {
            int j;
            for(j = 0;j=i;j++)
            {
            if(edges[j].isMST)
            {
            if(edges[j].v == edges[i].v ||
            edges[j].t == edges[i].v||
            edges[j].v == edges[i].t||
            edges[j].t == edges[i].t)
            nodeSet[edges[j].v] = nodeSet[edges[j].t] = MSTSetNum;
            }
            }
            nodeIsMST[edges[i].v] = nodeIsMST[edges[i].t] = true;
            }
            else
            {
            nodeSet[edges[i].v] = nodeSet[edges[i].t];
            nodeIsMST[edges[i].v] = nodeIsMST[edges[i].t] = true;
            }
            }
            }
            }
            /*
            測(cè)試函數(shù)
            */
            void test()
            {
            edges[0].v = 0,edges[0].t = 1,edges[0].isMST = false,edges[0].weight = 4;
            edges[1].v = 0,edges[1].t = 8,edges[1].isMST = false,edges[1].weight = 8;
            edges[2].v = 1,edges[2].t = 2,edges[2].isMST = false,edges[2].weight = 8;
            edges[3].v = 1,edges[3].t = 7,edges[3].isMST = false,edges[3].weight = 11;
            edges[4].v = 2,edges[4].t = 8,edges[4].isMST = false,edges[4].weight = 2;
            edges[5].v = 2,edges[5].t = 5,edges[5].isMST = false,edges[5].weight = 4;
            edges[6].v = 2,edges[6].t = 3,edges[6].isMST = false,edges[6].weight = 7;
            edges[7].v = 3,edges[7].t = 4,edges[7].isMST = false,edges[7].weight = 9;
            edges[8].v = 3,edges[8].t = 5,edges[8].isMST = false,edges[8].weight = 14;
            edges[9].v = 4,edges[9].t = 5,edges[9].isMST = false,edges[9].weight = 10;
            edges[10].v = 5,edges[10].t = 6,edges[10].isMST = false,edges[10].weight = 2;
            edges[11].v = 6,edges[11].t = 7,edges[11].isMST = false,edges[11].weight = 1;
            edges[12].v = 6,edges[12].t = 8,edges[12].isMST = false,edges[12].weight = 6;
            edges[13].v = 7,edges[13].t = 8,edges[13].isMST = false,edges[13].weight = 7;
            MST_Kruskal(14);
            int i,j;
            for(i = 0,j = 0;i14;i++)
            {
            if(edges[i].isMST)
            {
            printf(%d. (%d,%d)-------%dn,j+1,edges[i].v,edges[i].t,edges[i].weight);
            j++;
            }
            }
            }

            本文引用地址:http://www.biyoush.com/article/150270.htm

            c++相關(guān)文章:c++教程




            關(guān)鍵詞: 方法 操作 COUT CIN

            評(píng)論


            相關(guān)推薦

            技術(shù)專區(qū)

            關(guān)閉