Wiesz już, czym różni się iteracja od rekurencji. W wielu sytuacjach metody te mogą być wykorzystywane zamiennie.
Bywa jednak, że rekurencja błędnie używana jest w rozwiązywaniu problemów, których natura nie jest rekurencyjna. Zrozumienie wad i zalet rekurencji wymaga umiejętności tworzenia algorytmów w sposób rekurencyjny, dlatego warto przećwiczyć rozwiązywanie problemów zarówno za pomocą rekurencji, jak i iteracji.
W e‑materiale Rekurencja a iteracjaRekurencja a iteracja porównujemy te dwie metody oraz omawiamy wady i zalety każdej z nich. Tutaj natomiast zajmiemy się analizą tego zagadnienia w języku Java.
Więcej przykładów, ćwiczeń i rozwiązań znajdziesz w Rekurencja a iteracja – zadania maturalneRekurencja a iteracja – zadania maturalne.
Ciekawi cię, jak wyglądają implementacje w innych językach programowania? Możesz się z nimi zapoznać w pozostałych e‑materiałach z tej serii:
Rekurencja a iteracja w języku C++Rekurencja a iteracja w języku C++,
Rekurencja a iteracja w języku PythonRekurencja a iteracja 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.
Podsumujesz informacje na temat podstawowych właściwości iteracji i rekurencji.
Porównasz metodę iteracyjną i rekurencyjną w języku Java.
Rozwiążesz zadany problem metodą rekurencyjną i iteracyjną, wykorzystując język Java.