Čo je to rekurzia? definícia a význam

Pri programovaní programový modul alebo podprogram, ktorý sa sám volá, aby vykonal iteratívnu operáciu; inými slovami, čistý výraz sa opakuje, aby sa dosiahla oveľa zložitejšia operácia.

Princíp rekurzie ilustrujú Fibonacciho čísla, číselný rad, v ktorom sú prvé dva členy 1; po sebe idúce výrazy sú dané súčtom dvoch predchádzajúcich výrazov (1,1, 2, 3, 5, 8,13, 21, 34, 55, 89, 144 atď.). Fibonacciho čísla možno generovať podľa nasledujúcej rovnice, pokiaľ je n väčšie ako 2: Fibonacci («) = Fibonacci (« – 1) + Fibonacci (n – 2).

Technipages vysvetľuje rekurziu

Rekurzia je metóda riešenia problémov v programovaní, pri ktorej sa problém rozloží na menšie jednotky problémov a rieši sa individuálne. Takže prvé riešenie závisí od menších riešení, z ktorých je menej menších problémov. Rekurzia pomáha pri riešení problémov, pretože otázka sa rieši podľa svojich podmienok.

Najlepšie to ilustrujú ruské matriošky, čo je súprava bábik zapuzdrených vo väčšej bábike; každý kúsok bábiky je priamou kópiou nasledujúcej alebo predchádzajúcej bábiky okrem menších. Každá bábika je teda malou alebo výraznejšou verziou tej druhej. Rekurzívne programovanie je založené na tomto princípe, v ktorom sa problém rieši tak, že sa rozdelí na menšie problémy.

Rekurzia sa datuje od roku 1958, John McCarthy bol prvý, kto využil princíp rekurzie v programovaní, a to možno nájsť na jeho práci na LISP. LISP bol prvý programovací jazyk, ktorý obsahoval rekurzívne funkcie, ako ich máme dnes. McCarthyho práca bola inšpirovaná dielami Alonza Churcha, ktoré boli pred dvoma desaťročiami. Pozoruhodné zmienky spojené s rekurziou možno datovať aj do Dedekindovej práce o prirodzených číslach v roku 1888. Rozsa Peter prezentoval rekurzívne funkcie v roku 1932 na Medzinárodnom kongrese matematikov v Zürichu v roku 1932.

Bežné použitie rekurzie

  • Rekurzia pomáha pri riešení problémov, pretože rieši problém podľa jeho podmienok od rozdelenia problému na menšie problémy
  • Lepší spôsob riešenia problémov by bol cez Rekurzia pretože to rozširuje pohľad na daný problém
  • In Rekurzia, nový súbor problémov sú replikami každého iného a problémy sa riešia samostatne.

Bežné zneužitia rekurzie

  • Rekurzia nerieši problémy, aj keď je problém rozdelený na riešenie v menšom rozsahu
  • Rekurzia len zjednodušuje problém a neodpovedá naň.