Latest web development tutorials

Przykłady Java - Tower of Hanoi algorytmu

Przykłady Java Przykłady Java

Wieża Hanoi (znany również jako Tower of Hanoi) problem wynika ze starożytnej indyjskiej legendy zabawek edukacyjnych. Czas, kiedy Brahma stworzył świat, aby zrobić trzy filary diamentowych, Polak od dołu do góry w kolejności wielkości stos z 64 płyt złotych. Wielki polecenie Brahma Brahman na dysku od dołu w kolejności wielkości repozycjonowany na innych filarach. I zapewnia dysk nie można powiększyć na małej płycie, można poruszać się tylko jedną płytę pomiędzy trzema filarami.

Później ta przekształciła się w legendarnego Wieża Hanoi gry, grać w następujący sposób:

  • 1. Istnieją trzy bieguny A, B, C. Pręt ma szereg naczyń
  • 2. Każda przesunąć płytę, tylko niewielki stos w wielkiej górze
  • 3. Wszystkie dania z punktu A do przesunąć dźwignię cały słup C

Poniższy przykład demonstruje algorytm HANOR:

/*
 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);
      }
   }
}

Powyższy kod jest uruchamiany wyjście jest:

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

Przykłady Java Przykłady Java