Contoh ini membagikan kode spesifik untuk implementasi algoritma Floyd Java untuk menemukan jalur terpendek untuk referensi Anda. Konten spesifiknya adalah sebagai berikut
impor java.io.fileInputStream; impor java.io.filenotfoundException; impor java.util.scanner; TestMainio kelas publik { / ** * @param args * @throws filenotfoundException * / public static void main (string [] args) melempar filenotfoundException {testmainio test_print = testmainio baru (); int [] [] g = test_print.intputgragh ("d: //users//test.txt", 6); int [] [] dis = test_print.floyd (g, 6); test_print.printg (dis, 6); } public void printg (int [] [] g, int n) {for (int i = 0; i <n; i ++) {for (int j = 0; j <n; j ++) {System.out.println (i+"->"+j+""+g [i] [j]); }}} public int [] [] intgragh (jalur string, int num) melempar filenotfoundException {int [] [] g = int int [num] [num]; untuk (int i = 0; i <num; i ++) {for (int j = 0; j <num; j ++) {g [i] [j] = 999; }} Pemindai di = pemindai baru (FileInputStream baru (path)); while (in.hasnext ()) {int i = in.nextInt (); int j = in.nextInt (); int bobot = in.nextInt (); G [i] [j] = berat; } return g; } public int [] [] floyd (int [] [] g, int n) {int [] [] dis = new int [n] [n]; untuk (int q = 0; q <n; q ++) {for (int w = 0; w <n; w ++) {dis [q] [w] = g [q] [w]; } } for(int k = 0; k < n; k++){ for(int i=0; i < n; i++ ){ for(int j=0; j < n; j++){ if(Dis[i][j]>Dis[i][k]+Dis[k][j]){ Dis[i][j]=Dis[i][k]+Dis[k][j]; }}} return dis; }}}}Di atas adalah semua konten artikel ini. Saya berharap ini akan membantu untuk pembelajaran semua orang dan saya harap semua orang akan lebih mendukung wulin.com.