Logo lt.boatexistence.com

Ar rekursinės funkcijos yra greitesnės už iteraciją?

Turinys:

Ar rekursinės funkcijos yra greitesnės už iteraciją?
Ar rekursinės funkcijos yra greitesnės už iteraciją?

Video: Ar rekursinės funkcijos yra greitesnės už iteraciją?

Video: Ar rekursinės funkcijos yra greitesnės už iteraciją?
Video: What is Recursion?👩‍💻 (in 30 seconds) #technology #programming #software #career #computerscience 2024, Gegužė
Anonim

Rekursyvinė funkcija veikia daug greičiau nei iteracinė Priežastis ta, kad pastarajame kiekvienam elementui reikia iškviesti funkciją st_push, o tada kitą - st_pop. Pirmuoju atveju kiekvienam mazgui turite tik rekursinį CALL. Be to, prieiga prie kintamųjų iškvietimų krūvoje yra neįtikėtinai greita.

Ar greitesnis rekursyvinis ar kartotinis?

Atminties dėka rekursija yra maloni, tačiau atrodo, kad iteracija visada greitesnė Nors rekursiniai metodai veikia lėčiau, kartais jie naudoja mažiau kodo eilučių nei iteracija ir daugeliui yra lengviau suprantami. Rekursyviniai metodai taip pat yra naudingi atliekant tam tikras specifines užduotis, pavyzdžiui, pervažiuojant medžio struktūras.

Ar iteraciniai sprendimai yra greitesni nei rekursiniai?

Tačiau iteraciniai sprendimai paprastai yra greitesni nei rekursiniai sprendimai, kai kalbama apie greitį. … Standartinėje programavimo kalboje, kai kompiliatorius neturi uodegos rekursinio optimizavimo, rekursiniai iškvietimai paprastai yra lėtesni nei iteracija.

Ar rekursija lengviau nei iteracija?

Faktas yra tas, kad rekursija retai yra veiksmingiausias problemos sprendimo būdas, o iteracija beveik visada yra efektyvesnė Taip yra dėl to, kad su rekursiniu kūrimu paprastai tenka patirti daugiau išlaidų. skambučių dėl to, kad skambučių krūva yra labai naudojama rekursijos metu.

Kokie yra rekursijos trūkumai?

Rekursijos trūkumai

  • Rekursyvinės funkcijos paprastai yra lėtesnės nei nerekursinės funkcijos.
  • Gali prireikti daug atminties, kad tarpiniai rezultatai būtų laikomi sistemos krūvose.
  • Sunku analizuoti arba suprasti kodą.
  • Tai nėra efektyvesnė erdvės ir laiko sudėtingumo požiūriu.

Rekomenduojamas: