Vai rekursīvās funkcijas ir ātrākas par iterāciju?

Satura rādītājs:

Vai rekursīvās funkcijas ir ātrākas par iterāciju?
Vai rekursīvās funkcijas ir ātrākas par iterāciju?

Video: Vai rekursīvās funkcijas ir ātrākas par iterāciju?

Video: Vai rekursīvās funkcijas ir ātrākas par iterāciju?
Video: Kad un kāpēc jāpārbauda redze bērniem? 2024, Decembris
Anonim

rekursīvā funkcija darbojas daudz ātrāk nekā iteratīvā funkcija Iemesls ir tāpēc, ka pēdējā gadījumā katram vienumam ir nepieciešams funkcijas st_push izsaukums un pēc tam vēl viens st_pop.. Pirmajā gadījumā jums ir tikai rekursīvais CALL katram mezglam. Turklāt piekļuve mainīgajiem izsaukumu stekā ir neticami ātra.

Vai rekursīvs vai iteratīvs ir ātrāks?

Atgādināšana padara rekursiju patīkamu, taču šķiet, ka iterācija vienmēr ir ātrāka Lai gan rekursīvās metodes darbojas lēnāk, tās dažreiz izmanto mazāk koda rindu nekā iterācija, un daudziem tās ir vieglāk saprotamas. Rekursīvās metodes ir noderīgas arī noteiktiem specifiskiem uzdevumiem, piemēram, koku struktūru šķērsošanai.

Vai iteratīvie risinājumi ir ātrāki nekā rekursīvie risinājumi?

Tomēr iteratīvie risinājumi parasti ir ātrāki nekā rekursīvie risinājumi, kad runa ir par ātrumu. … Standarta programmēšanas valodā, kur kompilatoram nav astes rekursīvās optimizācijas, rekursīvie izsaukumi parasti ir lēnāki nekā iterācija.

Vai rekursija ir vieglāka par iterāciju?

Fakts ir tāds, ka rekursija reti ir visefektīvākā pieeja problēmas risināšanai, un iterācija gandrīz vienmēr ir efektīvāka. zvani, jo rekursijas laikā zvanu steks tiek ļoti izmantots.

Kādi ir rekursijas trūkumi?

Rekursijas trūkumi

  • Rekursīvās funkcijas parasti ir lēnākas nekā nerekursīvās funkcijas.
  • Var būt nepieciešams daudz vietas atmiņā, lai saglabātu starprezultātus sistēmas skursteņos.
  • Grūti analizēt vai saprast kodu.
  • Tas nav efektīvāks telpas un laika sarežģītības ziņā.

Ieteicams: