Zagadka Wież Hanoi jest problemem, który polega na przeniesieniu pojedynczo pewnej liczby krążków o różnych średnicach z jednego słupka na drugi i ułożeniu ich w kolejności od największego do najmniejszego. Łamigłówka ta oparta jest na starej legendzie o buddyjskich mnichach, którzy mają przenieść w ten sposób 64 krążki. W celu rozwiązania problemu muszą wykonać aż ruchów. W e‑materiale Zagadka Wież HanoiZagadka Wież Hanoi przedstawiliśmy najważniejsze informacje dotyczące tego zagadnienia.
W tym e‑materiale poznasz implementację algorytmu rozwiązywania tego problemu w języku Java.
Więcej przykładów, ćwiczeń i rozwiązań znajdziesz w e‑materiale Zagadka Wież Hanoi – zadania maturalneZagadka Wież Hanoi – zadania maturalne.
Ciekawi cię, jak wyglądają implementacje w innych językach programowania? Możesz się z nimi zapoznać w dwóch pozostałych e‑materiałach z tej serii:
Zagadka Wież Hanoi w języku C++Zagadka Wież Hanoi w języku C++,
Zagadka Wież Hanoi w języku PythonZagadka Wież Hanoi w języku Python.
O tym, jak zagadnienie rekurencji wyjaśnia matematyka, przeczytasz w e‑materiałach:
Ciąg określony rekurencyjnieCiąg określony rekurencyjnie,
Ciąg geometryczny określony rekurencyjnieCiąg geometryczny określony rekurencyjnie,
Wzór ogólny ciągu określonego rekurencyjnieWzór ogólny ciągu określonego rekurencyjnie,
Ciąg arytmetyczny określony wzorem rekurencyjnymCiąg arytmetyczny określony wzorem rekurencyjnym.
Zaimplementujesz algorytm rozwiązania zagadki Wież Hanoi w języku Java.
Przeanalizujesz złożoność czasową i pamięciową omawianego algorytmu.
Rozwiążesz samodzielnie zadania związane z zagadką Wież Hanoi.