logo

Program pro algoritmus Hanojské věže

Hanojská věž je matematická hádanka, kde máme tři tyče ( A , B , a C ) a N disky. Zpočátku jsou všechny disky naskládány v klesající hodnotě průměru, tj. nejmenší disk je umístěn nahoře a jsou na tyči A . Cílem hádanky je přesunout celou hromádku na jinou tyč (zde zvažováno C ), dodržujte následující jednoduchá pravidla:

  • Najednou lze přesunout pouze jeden disk.
  • Každý tah se skládá z odebrání horního disku z jednoho z hromádek a jeho umístění na vršek jiného stohu, tj. s diskem lze pohnout pouze tehdy, je-li to nejvyšší disk na stohu.
  • Na menší disk nesmí být umístěn žádný disk.

Příklady:

Vstup : 2
Výstup: Disk 1 se přesunul z A do B
Disk 2 se přesunul z A do C
Disk 1 se přesunul z B do C



Vstup: 3
Výstup: Disk 1 se přesunul z A do C
Disk 2 se přesunul z A do B
Disk 1 se přesunul z C do B
Disk 3 se přesunul z A do C
Disk 1 se přesunul z B do A
Disk 2 se přesunul z B do C
Disk 1 se přesunul z A do C

Následující video ukazuje řešení Hanojská věž pro vstup (N) = 3 –

Kvíz o rekurzi