Kezdőoldal » Számítástechnika » Programozás » Mikor érdemes rekurziót...

Mikor érdemes rekurziót használni?

Figyelt kérdés

2017. dec. 16. 18:54
 1/8 A kérdező kommentje:
és milyen esetekben jobb egy for/while loopnál és mért?
2017. dec. 16. 18:59
 2/8 anonim ***** válasza:
24%

Jobbára akkor, ha előre nem tudni, hogy hány alkalommal kell majd meghívni ugyanazt a függvényt.

Mondjuk egy parser építésénél.

2017. dec. 16. 19:27
Hasznos számodra ez a válasz?
 3/8 anonim ***** válasza:

van amit egyszerűbb rekurzívan megírni, pls quicksort, hatványozás, fibonacci...

Minden rekurzív függvényt meg lehet írni iteratívan is, csak legtöbb esetben bonyolítja a kódot.

Rekurzívnak a hátránya, hogy könnyebben lesz stackOverflow.

2017. dec. 16. 19:32
Hasznos számodra ez a válasz?
 4/8 anonim ***** válasza:
100%
A rekurziónak teljesítménybeli előnye ritkán van egy iteráció fölött, az előnye hogy letisztultabb, könnyebben átlátható kódot produkál. (debugolni viszont egy picit komplikáltabb lehet).
2017. dec. 16. 19:37
Hasznos számodra ez a válasz?
 5/8 anonim ***** válasza:
82%

Általában a rekurziót ciklussal lehet helyettesíteni (vagy veremmel, sorral) és sokszor érdemes is, hiszen a rekurzió sokkal több memóriát emészt fel.


Persze van néhány eset, amikor rekurziót használnak, pl egy bináris fa bejárása.


Ebből ugye az következik, hogy elvileg nem érdemes használni, de látványos, érdekes és sokszor "leegyszerűsít" egy-egy algoritmust.


[link]

2017. dec. 16. 19:38
Hasznos számodra ez a válasz?
 6/8 anonim ***** válasza:

pl Recursive Backtracking

sodoku, labirintus generálás stb

2017. dec. 16. 20:48
Hasznos számodra ez a válasz?
 7/8 anonim ***** válasza:

"pl egy bináris fa bejárása."

Vagy bármilyen fa, pl. tipikus példa a könyvtárszerkezet bejárása.


Olyankor célszerű (általában), amikor a feldolgozandó adatstruktúra (eseménytér, stb.) hasonló felépítésű, mint a részelemei, tehát a részek ugyanazt a mintát követik, mint az egész. A faktoriális, fibonacci, stb. pl. pont ilyenek.


Viszont nagyon fontos megnézni, hogy így milyen hatékonyan végezhető el a feladat. Suliban volt egy feladat, már nem emlékszem, valami sorozat számítás rekurzívan. Elég jó képességű gépek voltak, de olyan eszement rekurzív algoritmust kellett implementálni, hogy 10-15-ös paraméter esetén a függvény már 5-10 másodpercig ketyegett, 20-as körül meg teljesen beállt (nem vártuk ki, amíg lefut.) Szóval meg kell nézni, van amikor rekurzívan érdemes, és van, amikor nagyon nem éri meg.

2017. dec. 16. 21:17
Hasznos számodra ez a válasz?
 8/8 anonim ***** válasza:

pl a fibo rekúrzív megoldása pont ilyen

a fibo(10) az már több mint 100 függvényhívás

2017. dec. 16. 22:02
Hasznos számodra ez a válasz?

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!