logo

Programma Hanojas torņa algoritmam

Hanojas tornis ir matemātiska mīkla, kurā mums ir trīs stieņi ( A , B , un C ) un N diski. Sākotnēji visi diski ir sakrauti dilstošā diametra vērtībā, t.i., mazākais disks tiek novietots augšpusē un tie atrodas uz stieņa A . Puzles mērķis ir pārvietot visu kaudzīti uz citu stieni (šeit apskatīts C ), ievērojot šādus vienkāršus noteikumus:

  • Vienlaikus var pārvietot tikai vienu disku.
  • Katra kustība sastāv no augšējā diska paņemšanas no vienas no skursteņiem un novietojot to virs citas kaudzītes, t.i., disku var pārvietot tikai tad, ja tas ir kaudzītes augšējais disks.
  • Nevienu disku nedrīkst novietot virs mazāka diska.

Piemēri:



Ievade : 2
Izvade: 1. disks tika pārvietots no A uz B
2. disks tika pārvietots no A uz C
1. disks tika pārvietots no B uz C

štatu saraksts

Ievade: 3
Izvade: 1. disks tika pārvietots no A uz C
2. disks ir pārvietots no A uz B
1. disks tika pārvietots no C uz B
3. disks tika pārvietots no A uz C
1. disks ir pārvietots no B uz A
2. disks ir pārvietots no B uz C
1. disks tika pārvietots no A uz C

peles ritenis neritina pareizi

Nākamajā videoklipā parādīts risinājums Hanojas tornis ievadei (N) = 3 –



Viktorīna par rekursiju