Dieses Beispiel teilt den spezifischen Code für die Java -Implementierung von Floyd Algorithmus mit, um den kürzesten Pfad für Ihre Referenz zu finden. Der spezifische Inhalt ist wie folgt
import Java.io.FileInputStream; importieren java.io.filenotfoundException; import Java.util.scanner; public class testmainio { / ** * @param args * @throws filenotFoundException * / public static void main (String [] args) löscht FilenotFoundException {testmainio test_print = new testmainio (); 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) {für (int i = 0; i <n; i ++) {für (int j = 0; j <n; j ++) {system.out.println (i+"->"+j+"+g [i] [j]); }}} public int [] [] intgragh (String Pfad, int num) löscht FilenotFoundException {int [] [] g = new int [num] [num]; für (int i = 0; i <num; i ++) {für (int j = 0; j <num; j ++) {g [i] [j] = 999; }} Scanner in = neuer Scanner (neuer FileInputStream (Pfad)); while (in.hasnext ()) {int i = in.nextint (); int j = in.nextint (); int Gewicht = in.Nextint (); G [i] [j] = Gewicht; } return g; } public int [] [] floyd (int [] [] g, int n) {int [] [] dis = new int [n] [n]; für (int q = 0; q <n; q ++) {für (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; }}}}Das obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, es wird für das Lernen aller hilfreich sein und ich hoffe, jeder wird Wulin.com mehr unterstützen.