• <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>
            posts - 18,  comments - 5,  trackbacks - 0

            一、定義與定理
                  最小費(fèi)用最大流:設(shè)G是以s為源t為匯的網(wǎng)絡(luò),c是G的容量,b是G的單位流量費(fèi)用,且有b[i][j] = -b[i][j],f是G的流,則b(f)=∑(fij*bij),(i, j)∈E(G) 且fij>0。最小費(fèi)用最大流問題,就是求網(wǎng)絡(luò)G的最大流f且使費(fèi)用b(f)最小。這樣的流稱為最小費(fèi)用最大流。
            二、算法思想
                  用Ford-Fulkerson算法的思想,不斷地在殘留網(wǎng)絡(luò)中尋找增廣路,只不過這個增廣路是當(dāng)前網(wǎng)絡(luò)中s到t的以單位流量費(fèi)用為權(quán)的最短路,對這條增廣路進(jìn)行操作。由于費(fèi)用有負(fù)值,建議用SPFA算法。
            三、算法介紹
                  描述:

            1 MCMF(G, s, t)
            2     for each edge(u, v) in E(G)
            3         do f[u, v] = 0
            4            f[v, u] = 0
            5     while exists a path p from s to t in Gf and p is the shortest path
            6         do cf(p) = min{cf(u, v) : (u, v) in p}
            7            for each edge(u, v) in p
            8                do f[u, v] = f[u, v] + cf(p)
            9                   f[v, u] = - f[u, v]
                  實(shí)現(xiàn):
             1mcmf()
             2{
             3    while(true)
             4    {
             5        for(int i=1; i<=n+m+1; i++)
             6            d[i] = MAX;
             7        d[s] = 0;
             8        spfa(); //p中存有該點(diǎn)的前繼點(diǎn)
             9        if(p[t] == -1//表示已無增廣路
            10            break;
            11        int minf = INT_MAX;
            12        int it = t;
            13        while(p[it] != -1)
            14        {
            15            minf = min(minf, c[p[it]][it] - f[p[it]][it]);
            16            it = p[it];
            17        }

            18        it = t;
            19        while(p[it] != -1)
            20        {
            21            f[p[it]][it] += minf;
            22            f[it][p[it]] = -f[p[it]][it];
            23            it = p[it];
            24        }

            25    }

            26}

            三、算法示例
                  POJ 2516 解題報(bào)告
            posted on 2009-06-30 22:29 Icyflame 閱讀(5842) 評論(0)  編輯 收藏 引用 所屬分類: 圖論
            久久婷婷国产综合精品 | 狠狠干狠狠久久| 久久久噜噜噜www成人网| 狠狠色丁香久久婷婷综合五月| 久久人妻AV中文字幕| 午夜精品久久久久久久| 久久精品一区二区三区不卡| 国产99久久久国产精免费| 亚洲欧洲中文日韩久久AV乱码| 国产精品久久久久久久久久影院| 欧洲精品久久久av无码电影| 国产精品激情综合久久| 精品国产99久久久久久麻豆 | 日韩久久久久中文字幕人妻| 国产香蕉久久精品综合网| 国产精品久久99| 99久久精品国产一区二区 | 青青草原综合久久大伊人导航 | 久久99精品国产99久久6| 久久久免费精品re6| 久久亚洲精品国产亚洲老地址| 久久精品国产亚洲一区二区| 亚洲午夜无码AV毛片久久| 日本道色综合久久影院| 奇米综合四色77777久久| 伊人久久成人成综合网222| 99久久精品无码一区二区毛片| 婷婷五月深深久久精品| 中文字幕无码久久人妻| 999久久久免费国产精品播放| 亚洲伊人久久大香线蕉综合图片| 日韩欧美亚洲综合久久影院Ds| 久久99精品久久久久久| 久久国产精品无码HDAV| 亚洲午夜久久久久久噜噜噜| 久久久久国产日韩精品网站| 久久91精品国产91久久小草| 久久99精品久久久久久hb无码| 蜜臀av性久久久久蜜臀aⅴ麻豆| 久久久久久曰本AV免费免费| 亚洲精品国产自在久久|