Logo sk.boatexistence.com

Sú rekurzívne funkcie rýchlejšie ako iterácia?

Obsah:

Sú rekurzívne funkcie rýchlejšie ako iterácia?
Sú rekurzívne funkcie rýchlejšie ako iterácia?

Video: Sú rekurzívne funkcie rýchlejšie ako iterácia?

Video: Sú rekurzívne funkcie rýchlejšie ako iterácia?
Video: Comparing Iterative and Recursive Factorial Functions 2024, Smieť
Anonim

Rekurzívna funkcia rekurzívna beží oveľa rýchlejšie ako iteratívna Dôvodom je to, že v poslednej menovanej je pre každú položku potrebné CALL na funkciu st_push a potom ďalšie na st_pop. V prvom prípade máte pre každý uzol iba rekurzívne CALL. Navyše prístup k premenným v zásobníku hovorov je neuveriteľne rýchly.

Je rýchlejší rekurzívny alebo iteračný?

Zapamätanie robí rekurziu chutnou, ale Zdá sa, že iterácia je vždy rýchlejšia Hoci rekurzívne metódy bežia pomalšie, niekedy používajú menej riadkov kódu ako iterácia a pre mnohých sú jednoduchšie na pochopenie. Rekurzívne metódy sú užitočné aj pre určité špecifické úlohy, ako je napríklad prechádzanie stromovými štruktúrami.

Sú iteračné riešenia rýchlejšie ako rekurzívne riešenia?

Avšak iteratívne riešenia sú zvyčajne rýchlejšie ako rekurzívne riešenia, pokiaľ ide o rýchlosť. … V štandardnom programovacom jazyku, kde kompilátor nemá koncovú rekurzívnu optimalizáciu, sú rekurzívne volania zvyčajne pomalšie ako iterácia.

Je rekurzia jednoduchšia ako iterácia?

Faktom je, že rekurzia je zriedka najefektívnejším prístupom k riešeniu problému a iterácia je takmer vždy efektívnejšia Je to preto, že s vytváraním rekurzívnych je zvyčajne spojená väčšia réžia hovory kvôli skutočnosti, že zásobník hovorov je počas rekurzie veľmi využívaný.

Aké sú nevýhody rekurzie?

Nevýhody rekurzie

  • Rekurzívne funkcie sú vo všeobecnosti pomalšie ako nerekurzívne funkcie.
  • Na uloženie medzivýsledkov v systémových zásobníkoch môže byť potrebné veľa miesta v pamäti.
  • Ťažko analyzovať alebo pochopiť kód.
  • Z hľadiska priestorovej a časovej zložitosti to nie je efektívnejšie.

Odporúča: