Die Idee ist wie folgt:
Um die Lösungsschritte des Hannover-Turms dritter Ordnung zu realisieren, dh im Anfangszustand gibt es drei Platten von oben nach unten auf A, nämlich die Festplatte 1, die Festplatte 2 und die Festplatte 3, von denen die Festplatte 1 am kleinsten ist und Scheibe 3 ist der kleinste der größte Teller;
Bestimmen Sie die Anzahl der verbleibenden Platten.
Der Code ist wie folgt:
Die Codekopie lautet wie folgt:
öffentliche Klasse Hanoitower {
public static void bewegte (int Level, char von, char inter, char to) {
if (Level == 1) {// Wenn es nur eine Platte gibt, beenden Sie die Iteration
System.out.println ("from" + von + "Bewegungsplatte Nummer 1 bis" + bis);
} else {// Wenn es mehr als eine Platte gibt, iterieren Sie weiter
bewegt (Stufe - 1, von, bis, inter);
System.out.println ("from" + von + "Die Platte bewegen" + Level + "Zeichen zu" + bis);
bewegt (Stufe - 1, inter, von, bis);
}
}
public static void main (String [] args) {
int ndisks = 3; // Hannover Tower auf 3. Ordnung setzen
bewegt (ndisks, 'a', 'b', 'c'); // Implementieren Sie den beweglichen Algorithmus
}
}