Recursion | Základy algoritmizácie a programovania (2024/2025)

Zdroj
ručne priradené
Pridané

Pozrieť na YouTube →

Preber si túto prednášku so svojou AI

Skopíruj pripravený podklad a vlož ho do ChatGPT, Claude alebo inej AI — bude ťa učiť alebo skúšať len z tejto prednášky.

Otvoriť AI: ChatGPT · Claude · Gemini

Zhrnutie prednášky

Prednáška predstavuje princíp rekurzie ako spôsob definovania problému alebo funkcie pomocou seba samej, s dôrazom na jej význam pri jazykoch, ktoré neponúkajú klasické cykly. Na príklade Fibonacciho postupnosti sa ukazuje, ako robot Karel dokáže bez znalosti premenných a matematiky generovať súčet dvoch predchádzajúcich čísel pomocou kopírovania značiek. Kľúčovou časťou algoritmu je funkcia copy beers, ktorá rekurzívne volá samu seba, aby postupne skopírovala neznámy počet značiek na novú pozíciu. Zdôrazňuje sa dôležitosť podmienky ukončenia rekurzie, ktorá zabraňuje nekonečnému volaniu funkcie a pretečeniu pamäte. Na záver sa vysvetľuje princíp zásobníka volaní funkcií, kde predchádzajúce volanie (napr. main) zostáva aktívne, kým sa neukončia všetky vnorené volania.

  • - Rekurzia je definovanie problému alebo funkcie pomocou seba samej.
  • - Používa sa najmä tam, kde nie sú dostupné klasické cykly (while, for) alebo pri zložitejších matematických výpočtoch.
  • - Robot Karel generuje Fibonacciho postupnosť kopírovaním značiek namiesto matematického sčítania.
  • - Funkcia copy beers rekurzívne volá samu seba na kopírovanie neznámeho počtu značiek.
  • - Kľúčová je podmienka ukončenia rekurzie (if beer present), inak hrozí nekonečné volanie a preplnenie pamäte.
  • - Každé volanie funkcie vytvára nové miesto v pamäti, ktoré sa uvoľní až po jej ukončení.
  • - Princíp zásobníka volaní ilustrovaný na funkcii main, ktorá zostáva aktívna počas vykonávania vnorených funkcií.

Zhrnutie pripravené s pomocou AI z prepisu videa.