Heim > Java > javaLernprogramm > Hauptteil

Java-Beispiel – Tower of Hanoi-Algorithmus

黄舟
Freigeben: 2017-02-07 10:56:15
Original
1334 Leute haben es durchsucht

Der Turm von Hanoi (auch bekannt als der Turm von Hanoi) ist ein Lernspielzeug, das auf einer alten Legende in Indien basiert. Als Brahma die Welt erschuf, schuf er drei Diamantsäulen. Auf einer Säule wurden 64 Goldscheiben in der Reihenfolge ihrer Größe von unten nach oben gestapelt. Brahma befahl dem Brahmin, die Scheiben auf einer anderen Säule in der Reihenfolge ihrer Größe von unten neu anzuordnen. Es ist auch festgelegt, dass die Scheibe auf der kleinen Scheibe nicht vergrößert werden kann und jeweils nur eine Scheibe zwischen den drei Säulen bewegt werden kann.

Später entwickelte sich aus dieser Legende das Spiel Tower of Hanoi und das Gameplay ist wie folgt:

1 Es gibt drei Pole A, B und C. Auf der Stange A befinden sich mehrere Platten.

2. Bewegen Sie jeweils eine Platte, und die kleinere kann nur auf der größeren gestapelt werden.

3. Bewegen Sie alle Platten von der Stange A zu Pol C

Das folgende Beispiel zeigt die Implementierung des Tower of Hanoi-Algorithmus:

/*
 author by w3cschool.cc
 MainClass.java
 */
public class MainClass {
   public static void main(String[] args) {
      int nDisks = 3;
      doTowers(nDisks, 'A', 'B', 'C');
   }
   public static void doTowers(int topN, char from,
   char inter, char to) {
      if (topN == 1){
         System.out.println("Disk 1 from "
         + from + " to " + to);
      }else {
         doTowers(topN - 1, from, to, inter);
         System.out.println("Disk "
         + topN + " from " + from + " to " + to);
         doTowers(topN - 1, inter, from, to);
      }
   }
}
Nach dem Login kopieren

Das Ausgabeergebnis der Ausführung des obigen Codes ist:

Disk 1 from A to C
Disk 2 from A to B
Disk 1 from C to B
Disk 3 from A to C
Disk 1 from B to A
Disk 2 from B to C
Disk 1 from A to C
Nach dem Login kopieren


Das Obige ist der Inhalt des Java-Beispiels – Tower of Hanoi-Algorithmus. Weitere verwandte Inhalte finden Sie auf der chinesischen PHP-Website (www.php.cn)!


Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!