lzm
who dare win.
posts - 14, comments - 29, trackbacks - 0, articles - 0
導航
C++博客
首頁
新隨筆
聯系
聚合
管理
<
2025年5月
>
日
一
二
三
四
五
六
27
28
29
30
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
2
3
4
5
6
7
常用鏈接
我的隨筆
我的評論
我參與的隨筆
留言簿
(2)
給我留言
查看公開留言
查看私人留言
隨筆分類
(13)
Algorithm(10)
OJ(3)
隨筆檔案
(14)
2009年4月 (11)
2009年3月 (2)
2008年10月 (1)
收藏夾
(4)
POJ
SL(4)
ZOJ
最新隨筆
1.?poj 1094 Sorting It All Out
2.?Floyd_Warshall算法
3.?Kruskal算法
4.?Prim算法
5.?Critical Path 關鍵路徑
6.?Bellman_Ford算法 SPFA算法
7.?Dijkstra算法
8.?USP 無權最短路徑算法
9.?Topsort 拓撲排序
10.?(正則表達式)是否匹配(字符串)
11.?Quicksort 快速排序
12.?poj 1024 Tester Program
13.?poj 1022 Packing Unit 4D Cubes
14.?加減乘除24
搜索
積分與排名
積分 - 38932
排名 - 544
最新評論
1.?re: Dijkstra算法
請問一下,這個路徑可以輸出成功嗎?為什么我的差不多可輸不出來呢?
prev[w] = v; 只加著一句就夠了嗎?
--毛
2.?re: (正則表達式)是否匹配(字符串)[未登錄]
呃……請問為什么我輸入A*G.C和AGTGTC,結果是dismatch呢?
--xyz
3.?re: Kruskal算法
這個程序是不是有個bug:
如果節點數量為1,邊數量為0
則應該是有生成樹的,但是kruskal函數返回結果為false吧
個人意見
--mwxjm
4.?re: 加減乘除24
想問下~為什么tb1函數要swap交換后在執行后有swap
--65666
5.?re: poj 1024 Tester Program[未登錄]
灰常感謝LZ,看了你的第5條那個,讓debug了3個小時的我一下就過了;
因為我的初始化原來是-1,所以釀成杯具啊。。
這bug。。汗。
--joy
閱讀排行榜
1.?Dijkstra算法(6202)
2.?Kruskal算法(4564)
3.?Prim算法(4354)
4.?(正則表達式)是否匹配(字符串)(3936)
5.?加減乘除24(2406)
評論排行榜
1.?加減乘除24(7)
2.?poj 1094 Sorting It All Out(5)
3.?Quicksort 快速排序(4)
4.?(正則表達式)是否匹配(字符串)(3)
5.?Dijkstra算法(3)
Floyd_Warshall算法
Posted on 2009-04-11 03:14
lzmagic
閱讀(2036)
評論(0)
編輯
收藏
引用
所屬分類:
Algorithm
/**/
/*
*
* FLOYD_WARSHALL 所有頂點對的最短路徑算法 (All-Pairs Shortest Path Algorithm)
* 輸入:圖g
* 輸出:所有頂點對的最短路徑長
* 結構:圖g用鄰接矩陣表示
* 算法:Floyd_Warshall算法(動態規劃)
* 復雜度:O(|V|^3)
*/
#include
<
iostream
>
#include
<
string
>
#include
<
vector
>
#include
<
deque
>
#include
<
list
>
#include
<
stack
>
#include
<
queue
>
#include
<
iterator
>
#include
<
algorithm
>
#include
<
numeric
>
#include
<
functional
>
#include
<
climits
>
using
namespace
std;
int
n;
vector
<
vector
<
int
>
>
g;
vector
<
vector
<
int
>
>
dist;
void
Floyd_Warshall()
{
//
初始化dist,頂點間(無中間頂點)最短路徑長為邊長,頂點到自身的最短路徑長為0。
dist
=
g;
for
(
int
i
=
0
; i
<
n;
++
i)
dist[i][i]
=
0
;
//
從頂點i到定點j且中間頂點皆屬于集合{0, 1, 2,
, k}的最短路徑長。
for
(
int
k
=
0
; k
<
n;
++
k)
for
(
int
i
=
0
; i
<
n;
++
i)
for
(
int
j
=
0
; j
<
n;
++
j)
if
(dist[i][k]
<
INT_MAX
&&
dist[k][j]
<
INT_MAX)
dist[i][j]
=
min(dist[i][j], dist[i][k]
+
dist[k][j]);
}
int
main()
{
n
=
5
;
g.assign(n, vector
<
int
>
(n, INT_MAX));
g[
0
][
1
]
=
3
; g[
0
][
2
]
=
8
; g[
0
][
4
]
=
-
4
;
g[
1
][
3
]
=
1
; g[
1
][
4
]
=
7
;
g[
2
][
1
]
=
4
;
g[
3
][
0
]
=
2
; g[
3
][
2
]
=
-
5
;
g[
4
][
3
]
=
6
;
Floyd_Warshall();
for
(
int
i
=
0
; i
<
n;
++
i)
{
for
(
int
j
=
0
; j
<
n;
++
j)
cout
<<
dist[i][j]
<<
'
'
;
cout
<<
endl;
}
system(
"
pause
"
);
return
0
;
}
只有注冊用戶
登錄
后才能發表評論。
【推薦】100%開源!大型工業跨平臺軟件C++源碼提供,建模,組態!
相關文章:
Floyd_Warshall算法
Kruskal算法
Prim算法
Critical Path 關鍵路徑
Bellman_Ford算法 SPFA算法
Dijkstra算法
USP 無權最短路徑算法
Topsort 拓撲排序
(正則表達式)是否匹配(字符串)
Quicksort 快速排序
網站導航:
博客園
IT新聞
BlogJava
博問
Chat2DB
管理
Powered by:
C++博客
Copyright © lzmagic
久久久久久精品无码人妻
|
久久久久国产成人精品亚洲午夜
|
日韩精品久久久久久久电影
|
一本久久免费视频
|
色综合久久久久久久久五月
|
国产精品久久精品
|
色天使久久综合网天天
|
亚洲精品无码久久久久去q
|
国产精品美女久久久
|
免费一级欧美大片久久网
|
99麻豆久久久国产精品免费
|
精品乱码久久久久久夜夜嗨
|
亚洲精品乱码久久久久久蜜桃图片
|
蜜臀av性久久久久蜜臀aⅴ
|
久久久久国产日韩精品网站
|
精品久久久无码人妻中文字幕豆芽
|
狠狠人妻久久久久久综合蜜桃
|
囯产精品久久久久久久久蜜桃
|
国产精品欧美亚洲韩国日本久久
|
狠狠色丁香久久婷婷综
|
久久亚洲视频
|
久久av高潮av无码av喷吹
|
99久久99久久久精品齐齐
|
亚洲欧美一区二区三区久久
|
久久成人国产精品二三区
|
亚洲va久久久噜噜噜久久男同
|
久久亚洲中文字幕精品有坂深雪
|
中文字幕久久波多野结衣av
|
狠狠精品久久久无码中文字幕
|
久久AV高清无码
|
精品熟女少妇av免费久久
|
中文字幕人妻色偷偷久久
|
性做久久久久久久久浪潮
|
久久久久亚洲av成人无码电影
|
亚洲国产精品婷婷久久
|
丰满少妇人妻久久久久久
|
久久亚洲国产成人精品性色
|
久久免费看黄a级毛片
|
日韩欧美亚洲综合久久
|
无码人妻久久一区二区三区蜜桃
|
欧美久久久久久精选9999
|