Kodėl rekursija tokia sunki?

Turinys:

Kodėl rekursija tokia sunki?
Kodėl rekursija tokia sunki?
Anonim

Kodėl rekursija yra paini? Pagrindinė priežastis yra ta, kad mes žiūrime į tą pačią funkciją su skirtingomis vietinių kintamųjų reikšmėmis . Labai svarbu įsitikinti, kuri įvestis šiuo metu naudojama, kai analizuojate rekursinę funkciją rekursinė funkcija μ rekursinės funkcijos (arba bendrosios rekursinės funkcijos) yra dalinės funkcijos, kurios paima baigtines natūraliųjų skaičių eiles ir grįžta vienas natūralusis skaičius. Jie yra mažiausia dalinių funkcijų klasė, kuri apima pradines funkcijas ir yra uždaryta pagal kompoziciją, primityviąją rekursiją ir μ operatorių. https://en.wikipedia.org › wiki › General_recursive_function

Bendra rekursinė funkcija – Vikipedija

Ar sunku išmokti rekursijos?

Tačiau yra dar viena labai galinga valdymo struktūra: rekursija. Rekursija yra viena iš svarbiausių kompiuterių mokslo idėjų, tačiau paprastai ji laikoma viena iš sunkiausiai suvokiamų programavimo dalių. Knygose jis dažnai pristatomas daug vėliau nei kartotinės valdymo struktūros.

Kodėl rekursija netinka?

Blogas. Privalomose programavimo kalbose daugeliu atvejų reikėtų vengti rekursinių funkcijų (prašau, nerašykite neapykantos laiškų apie tai, kad tai nėra tiesa 100 % laiko). Rekursinės funkcijos yra mažiau veiksmingos nei iteracinės funkcijos. Be to, jiems gresia krūvos perpildymo pavojus.

Kokia yra rekursijos problema?

Rekursija yraalgoritminė technika, kai funkcija, norėdama atlikti užduotį, pasišaukia su tam tikra užduoties dalimi. Rekursyvinė funkcija naudojasi paprastesne problemos versija, bandydama supaprastinti problemą iki taško, kad ją būtų galima išspręsti.

Kodėl rekursija tokia galinga?

Naudodami rekursiją, jūs taip pat gaunate papildomos naudos, nes kiti programuotojai gali lengviau suprasti jūsų kodą – tai visada yra naudinga. Griežtai kalbant, rekursija ir iteracija yra vienodai galingos. Bet koks rekursinis sprendimas gali būti įgyvendintas kaip pasikartojantis sprendimas su krūva.

Rekomenduojamas: