R6JcAWVXWnPKM
Fotografia przedstawia wysoki słup z wieloma kładkami.

Rekurencja w języku C++

Źródło: schrupp, domena publiczna.

Rekurencja jest metodą rozwiązywania problemów, która korzysta z rozwiązań innych problemów. Jej wyjątkowość polega na tym, że za „innymi problemami” kryje się problem właściwy, ale rozwiązywany dla innych rozmiarów tych samych danych. Przykładem może być obliczanie silni liczby. Żeby policzyć 56!, najpierw możemy wyliczyć 55!. Z kolei w celu ustalenia, ile wynosi 55!, można najpierw obliczyć 54! itd.

W e‑materiale RekurencjaP6Y0RIEgQRekurencja przedstawiliśmy podstawowe informacje dotyczące omawianego zagadnienia. Kolejnym krokiem będzie implementacja w wybranym języku programowania. Ten e‑materiał poświęcony jest implementacji w języku C++.

Więcej przykładów, ćwiczeń i rozwiązań znajdziesz w:

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:

O tym, jak zagadnienie rekurencji wyjaśnia matematyka, przeczytasz w e‑materiałach:

Twoje cele
  • Przeanalizujesz rekurencyjne podejście do algorytmu Euklidesa i poznasz zalety jego stosowania.

  • Wyjaśnisz, czym rekurencja różni się od iteracji.

  • Rozwiążesz kilka zadań z wykorzystaniem rekurencji.