1. Nauka
  2. /
  3. Kursy
  4. /
  5. Struktury danych i algorytmy w Pythonie

Connected

ćwiczenie

Wieże Hanoi

W tym ćwiczeniu zaimplementujesz łamigłówkę Wież Hanoi za pomocą algorytmu rekurencyjnego. Celem gry jest przeniesienie wszystkich dysków z jednego z trzech prętów na inny, zgodnie z następującymi zasadami:

  • Jednocześnie można przenosić tylko jeden dysk.
  • Można zdjąć wyłącznie górny dysk ze stosu i umieścić go na szczycie innego stosu.
  • Nie można kłaść większego dysku na mniejszym.

Picture of the game Tower of Hanoi

Przedstawiony algorytm to implementacja tej gry z czterema dyskami i trzema prętami o nazwach „A", „B" i „C". Kod zawiera dwa błędy. Jeśli go uruchomisz, konsola zgłosi błąd – zostanie przekroczona maksymalna głębokość rekurencji. Czy uda ci się znaleźć usterki i je naprawić?

Instrukcje

100 XP
  • Popraw przypadek bazowy.
  • Popraw wywołania funkcji hanoi().