Floyd-Warshall多源最短路径
2008-02-18 01:53
316 查看
Floyd-Warshall多源最短路径
![](mhtml:file://C:/Documents and Settings/Owner.LENOVO-8C4C84DB/桌面/yo blog/Floyd-Warshall多源最短路径 - &豪 - C++博客.mht!http://www.cppblog.com/Images/OutliningIndicators/None.gif)
const int MAXN = 101 ;
![](mhtml:file://C:/Documents and Settings/Owner.LENOVO-8C4C84DB/桌面/yo blog/Floyd-Warshall多源最短路径 - &豪 - C++博客.mht!http://www.cppblog.com/Images/OutliningIndicators/None.gif)
const int INF = 1000000 ;
![](mhtml:file://C:/Documents and Settings/Owner.LENOVO-8C4C84DB/桌面/yo blog/Floyd-Warshall多源最短路径 - &豪 - C++博客.mht!http://www.cppblog.com/Images/OutliningIndicators/None.gif)
int g[MAXN][MAXN];
![](mhtml:file://C:/Documents and Settings/Owner.LENOVO-8C4C84DB/桌面/yo blog/Floyd-Warshall多源最短路径 - &豪 - C++博客.mht!http://www.cppblog.com/Images/OutliningIndicators/None.gif)
int d[MAXN][MAXN];
![](mhtml:file://C:/Documents and Settings/Owner.LENOVO-8C4C84DB/桌面/yo blog/Floyd-Warshall多源最短路径 - &豪 - C++博客.mht!http://www.cppblog.com/Images/OutliningIndicators/None.gif)
int floyd( int n)
![](mhtml:file://C:/Documents and Settings/Owner.LENOVO-8C4C84DB/桌面/yo blog/Floyd-Warshall多源最短路径 - &豪 - C++博客.mht!http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif)
![](mhtml:file://C:/Documents and Settings/Owner.LENOVO-8C4C84DB/桌面/yo blog/Floyd-Warshall多源最短路径 - &豪 - C++博客.mht!http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif)
![](mhtml:file://C:/Documents and Settings/Owner.LENOVO-8C4C84DB/桌面/yo blog/Floyd-Warshall多源最短路径 - &豪 - C++博客.mht!http://www.cppblog.com/Images/dot.gif)
{
![](mhtml:file://C:/Documents and Settings/Owner.LENOVO-8C4C84DB/桌面/yo blog/Floyd-Warshall多源最短路径 - &豪 - C++博客.mht!http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
int i, j, k;
![](mhtml:file://C:/Documents and Settings/Owner.LENOVO-8C4C84DB/桌面/yo blog/Floyd-Warshall多源最短路径 - &豪 - C++博客.mht!http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
for (i = 1 ; i <= n; i ++ )
![](mhtml:file://C:/Documents and Settings/Owner.LENOVO-8C4C84DB/桌面/yo blog/Floyd-Warshall多源最短路径 - &豪 - C++博客.mht!http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
for (j = 1 ; j <= n; j ++ )
![](mhtml:file://C:/Documents and Settings/Owner.LENOVO-8C4C84DB/桌面/yo blog/Floyd-Warshall多源最短路径 - &豪 - C++博客.mht!http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
d[i][j] = g[i][j];
![](mhtml:file://C:/Documents and Settings/Owner.LENOVO-8C4C84DB/桌面/yo blog/Floyd-Warshall多源最短路径 - &豪 - C++博客.mht!http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
for (k = 1 ; k <= n; k ++ )
![](mhtml:file://C:/Documents and Settings/Owner.LENOVO-8C4C84DB/桌面/yo blog/Floyd-Warshall多源最短路径 - &豪 - C++博客.mht!http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](mhtml:file://C:/Documents and Settings/Owner.LENOVO-8C4C84DB/桌面/yo blog/Floyd-Warshall多源最短路径 - &豪 - C++博客.mht!http://www.cppblog.com/Images/OutliningIndicators/ContractedSubBlock.gif)
![](mhtml:file://C:/Documents and Settings/Owner.LENOVO-8C4C84DB/桌面/yo blog/Floyd-Warshall多源最短路径 - &豪 - C++博客.mht!http://www.cppblog.com/Images/dot.gif)
{
![](mhtml:file://C:/Documents and Settings/Owner.LENOVO-8C4C84DB/桌面/yo blog/Floyd-Warshall多源最短路径 - &豪 - C++博客.mht!http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
for (i = 1 ; i <= n; i ++ )
![](mhtml:file://C:/Documents and Settings/Owner.LENOVO-8C4C84DB/桌面/yo blog/Floyd-Warshall多源最短路径 - &豪 - C++博客.mht!http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
for (j = 1 ; j <= n; j ++ )
![](mhtml:file://C:/Documents and Settings/Owner.LENOVO-8C4C84DB/桌面/yo blog/Floyd-Warshall多源最短路径 - &豪 - C++博客.mht!http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](mhtml:file://C:/Documents and Settings/Owner.LENOVO-8C4C84DB/桌面/yo blog/Floyd-Warshall多源最短路径 - &豪 - C++博客.mht!http://www.cppblog.com/Images/OutliningIndicators/ContractedSubBlock.gif)
![](mhtml:file://C:/Documents and Settings/Owner.LENOVO-8C4C84DB/桌面/yo blog/Floyd-Warshall多源最短路径 - &豪 - C++博客.mht!http://www.cppblog.com/Images/dot.gif)
{
![](mhtml:file://C:/Documents and Settings/Owner.LENOVO-8C4C84DB/桌面/yo blog/Floyd-Warshall多源最短路径 - &豪 - C++博客.mht!http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
if (d[i][k] < INF && d[k][j] < INF
![](mhtml:file://C:/Documents and Settings/Owner.LENOVO-8C4C84DB/桌面/yo blog/Floyd-Warshall多源最短路径 - &豪 - C++博客.mht!http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
&& d[i][k] + d[k][j] < d[i][j])
![](mhtml:file://C:/Documents and Settings/Owner.LENOVO-8C4C84DB/桌面/yo blog/Floyd-Warshall多源最短路径 - &豪 - C++博客.mht!http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
d[i][j] = d[i][k] + d[k][j];
![](mhtml:file://C:/Documents and Settings/Owner.LENOVO-8C4C84DB/桌面/yo blog/Floyd-Warshall多源最短路径 - &豪 - C++博客.mht!http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
}
![](mhtml:file://C:/Documents and Settings/Owner.LENOVO-8C4C84DB/桌面/yo blog/Floyd-Warshall多源最短路径 - &豪 - C++博客.mht!http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![](mhtml:file://C:/Documents and Settings/Owner.LENOVO-8C4C84DB/桌面/yo blog/Floyd-Warshall多源最短路径 - &豪 - C++博客.mht!http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
}
![](mhtml:file://C:/Documents and Settings/Owner.LENOVO-8C4C84DB/桌面/yo blog/Floyd-Warshall多源最短路径 - &豪 - C++博客.mht!http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
return 0 ;
![](mhtml:file://C:/Documents and Settings/Owner.LENOVO-8C4C84DB/桌面/yo blog/Floyd-Warshall多源最短路径 - &豪 - C++博客.mht!http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockEnd.gif)
}
相关文章推荐
- 多源最短路径问题-floyd warshall
- Floyd-Warshall多源最短路径
- [置顶] 多源最短路径-Floyd-Warshall—C
- Floyd-Warshall解决多源最短路径问题-(只有五行的算法)
- 多源最短路径算法---Floyd-Warshall
- 最短路径之Floyd-Warshall(只有五行的最短路)
- 图论之最短路径 弗洛伊德算法(Floyd)多源最短
- Floyd 算法求多源最短路径
- 多源最短路径 Floyd
- 【算法导论】【Floyd-Warshall 算法】每对节点之间的最短路径
- 所有节点对的最短路径之Floyd-Warshall
- Geeks面试题:Floyd Warshall Algorithm 所有顶点之间的最短路径问题
- SDUT 1867 最短路径问题 (Floyd 多源)
- 图论之最短路径(1)——Floyd Warshall & Dijkstra算法
- 多源最短路径 Floyd 算法(有向图) C实现 ~
- POJ1125 Stockbroker Grapevine (Floyd求多源最短路径)
- Floyd 算法求多源最短路径-打印最短路径
- 最短路径算法——Dijkstra,Bellman-Ford,Floyd-Warshall,Johnson,无一幸免
- Floyd-Warshall 算法-- 最短路径(适合节点密集的图)
- 多源最短路径——floyd-Warshall算法的拓展