日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

java floyd_百度百科里面的floyd算法java的代码,总是无法运行。请问是代码有问题吗,如何编译啊?...

發布時間:2024/8/23 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java floyd_百度百科里面的floyd算法java的代码,总是无法运行。请问是代码有问题吗,如何编译啊?... 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

展開全部

不能編譯運行的說法是錯誤,但是結果是否正確,我就32313133353236313431303231363533e59b9ee7ad9431333335303539不知道了,我不懂這個算法public?class?FLOYD?{

int[][]?length?=?null;//?任意兩點之間路徑長度

int[][][]?path?=?null;//?任意兩點之間的路徑

public?FLOYD(int[][]?G)?{

int?MAX?=?100;

int?row?=?G.length;//?圖G的行數

int[][]?spot?=?new?int[row][row];//?定義任意兩點之間經過的點

int[]?onePath?=?new?int[row];//?記錄一條路徑

length?=?new?int[row][row];

path?=?new?int[row][row][];

for?(int?i?=?0;?i?

//?處理圖兩點之間的路徑

for?(int?j?=?0;?j?

if?(G[i][j]?==?0)

G[i][j]?=?MAX;//?沒有路徑的兩個點之間的路徑為默認最大

if?(i?==?j)

G[i][j]?=?0;//?本身的路徑長度為0

}

for?(int?i?=?0;?i?

//?初始化為任意兩點之間沒有路徑

for?(int?j?=?0;?j?

spot[i][j]?=?-1;

for?(int?i?=?0;?i?

//?假設任意兩點之間的沒有路徑

onePath[i]?=?-1;

for?(int?v?=?0;?v?

for?(int?w?=?0;?w?

length[v][w]?=?G[v][w];

for?(int?u?=?0;?u?

for?(int?v?=?0;?v?

for?(int?w?=?0;?w?

if?(length[v][w]?>?length[v][u]?+?length[u][w])?{

length[v][w]?=?length[v][u]?+?length[u][w];//?如果存在更短路徑則取更短路徑

spot[v][w]?=?u;//?把經過的點加入

}

for?(int?i?=?0;?i?

int[]?point?=?new?int[1];

for?(int?j?=?0;?j?

point[0]?=?0;

onePath[point[0]++]?=?i;

outputPath(spot,?i,?j,?onePath,?point);

path[i][j]?=?new?int[point[0]];

for?(int?s?=?0;?s?

path[i][j][s]?=?onePath[s];

}

}

}

void?outputPath(int[][]?spot,?int?i,?int?j,?int[]?onePath,?int[]?point)?{//?輸出i//

//?到j//

//?的路徑的實際代碼,point[]記錄一條路徑的長度

if?(i?==?j)

return;

if?(spot[i][j]?==?-1)

onePath[point[0]++]?=?j;

//?System.out.print("?"+j+"?");

else?{

outputPath(spot,?i,?spot[i][j],?onePath,?point);

outputPath(spot,?spot[i][j],?j,?onePath,?point);

}

}

public?static?void?main(String[]?args)?{

int?data[][]?=?{

{?0,?27,?44,?17,?11,?27,?42,?0,?0,?0,?20,?25,?21,?21,?18,?27,?0?},//?x1

{?27,?0,?31,?27,?49,?0,?0,?0,?0,?0,?0,?0,?52,?21,?41,?0,?0?},//?1

{?44,?31,?0,?19,?0,?27,?32,?0,?0,?0,?47,?0,?0,?0,?32,?0,?0?},//?2

{?17,?27,?19,?0,?14,?0,?0,?0,?0,?0,?30,?0,?0,?0,?31,?0,?0?},//?3

{?11,?49,?0,?14,?0,?13,?20,?0,?0,?28,?15,?0,?0,?0,?15,?25,?30?},//?4

{?27,?0,?27,?0,?13,?0,?9,?21,?0,?26,?26,?0,?0,?0,?28,?29,?0?},//?5

{?42,?0,?32,?0,?20,?9,?0,?13,?0,?32,?0,?0,?0,?0,?0,?33,?0?},//?6

{?0,?0,?0,?0,?0,?21,?13,?0,?19,?0,?0,?0,?0,?0,?0,?0,?0?},//?7

{?0,?0,?0,?0,?0,?0,?0,?19,?0,?11,?20,?0,?0,?0,?0,?33,?21?},//?8

{?0,?0,?0,?0,?28,?26,?32,?0,?11,?0,?10,?20,?0,?0,?29,?14,?13?},//?9

{?20,?0,?47,?30,?15,?26,?0,?0,?20,?10,?0,?18,?0,?0,?14,?9,?20?},//?10

{?25,?0,?0,?0,?0,?0,?0,?0,?0,?20,?18,?0,?23,?0,?0,?14,?0?},//?11

{?21,?52,?0,?0,?0,?0,?0,?0,?0,?0,?0,?23,?0,?27,?22,?0,?0?},//?12

{?21,?21,?0,?0,?0,?0,?0,?0,?0,?0,?0,?0,?27,?0,?0,?0,?0?},//?13

{?18,?41,?32,?31,?15,?28,?0,?0,?0,?29,?14,?0,?22,?0,?0,?11,?0?},//?14

{?27,?0,?0,?0,?25,?29,?33,?0,?33,?14,?9,?14,?0,?0,?11,?0,?9?},//?15

{?0,?0,?0,?0,?30,?0,?0,?0,?21,?13,?20,?0,?0,?0,?0,?9,?0?}?//?16

};

for?(int?i?=?0;?i?

for?(int?j?=?i;?j?

if?(data[i][j]?!=?data[j][i])

return;

FLOYD?test?=?new?FLOYD(data);

for?(int?i?=?0;?i?

for?(int?j?=?i;?j?

System.out.println();

System.out.print("From?"?+?i?+?"?to?"?+?j?+?"?path?is:?");

for?(int?k?=?0;?k?

System.out.print(test.path[i][j][k]?+?"?");

System.out.println();

System.out.println("From?"?+?i?+?"?to?"?+?j?+?"?length?:"

+?test.length[i][j]);

}

}

}

總結

以上是生活随笔為你收集整理的java floyd_百度百科里面的floyd算法java的代码,总是无法运行。请问是代码有问题吗,如何编译啊?...的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。