Hanojská veža je matematická hádanka, v ktorej máme tri prúty ( A , B , a C ) a N disky. Spočiatku sú všetky disky naskladané v klesajúcej hodnote priemeru, t.j. najmenší disk je umiestnený na vrchu a sú na tyči A . Cieľom hádanky je presunúť celý stoh na inú tyč (tu sa uvažuje C ), pri dodržaní nasledujúcich jednoduchých pravidiel:
- Naraz je možné presunúť iba jeden disk.
- Každý pohyb pozostáva z vybratia horného disku z jedného z kôp a jeho položenia na vrch iného stohu, t. j. disk je možné posunúť len vtedy, ak je to najvrchnejší disk v stohu.
- Na menší disk sa nesmie umiestniť žiadny disk.
Príklady:
Vstup : 2
Výkon: Disk 1 sa presunul z A do B
Disk 2 sa presunul z A do C
Disk 1 sa presunul z B do CVstup: 3
Výkon: Disk 1 sa presunul z A do C
Disk 2 sa presunul z A do B
Disk 1 sa presunul z C do B
Disk 3 sa presunul z A do C
Disk 1 sa presunul z B do A
Disk 2 sa presunul z B do C
Disk 1 sa presunul z A do C
Nasledujúce video ukazuje riešenie Hanojská veža pre vstup (N) = 3 –
Kvíz o rekurzii