Razlika između ponavljanja i ponavljanja

Ključna razlika: U programiranju se rekurzija može objasniti razmatranjem rekurzivne funkcije. Rekurzivna funkcija je ona koja se ponovno poziva da ponovi kod. S druge strane, iteracija se postiže iterativnom funkcijom koja ponavlja neke dijelove koda.

U programiranju se rekurzija i iteracija koriste za postizanje ponavljanja. Oni se odnose na proces koji se ponavlja više puta. Rekurzija se temelji na pristupu u kojem se nešto odnosi na sebe dok se ne zadovolji uvjet. Za metodu se kaže da je rekurzivna ako se može pozvati izravno ili neizravno kao -

void name ()

{

... Ime() ...

}

ili

void name ()

{

... igra() ...

}

void game () {

... Ime() ...

}

Za uspješnu rekurziju treba imati na umu da svaki poziv izvršen u procesu rekurzije mora pojednostaviti računanje. Rekurzija se postiže definiranjem osnovnog slučaja.

int factorial (int N)

{

if (N == 0) vrati 1;

inače se vrati (N * faktorijalno (N-1));

}

U ovom primjeru, rekurzija se lako može vidjeti u izjavi (N * faktorijalni (N-1)), gdje ponovno poziva funkcijsku funkciju. Rekurzija je vrlo korisna jer pomaže u skraćivanju koda. Međutim, rekurzija je malo spora u izvedbi.

Ponavljanje se temelji na petljama. Te se petlje odnose na eksplicitne iteracijske procese. Za ispunjavanje zahtjeva petlje mora imati neku vrstu kriterija koji zaustavlja daljnju iteraciju. Međutim, ako test uvjeta petlje nikada ne postane lažan, tada je u tom stanju neizbježna pojava beskonačne petlje. U ovom se primjeru faktorijal određuje pomoću postupka iteracije -

funkcijska funkcija (n)

{

var petlja, rezultat;

rezultat = 1;

za (petlja 1; petlja <n, petlja ++)

{

rezultat = petlja rezultata;

}

povratni rezultat;

}

U ovom primjeru, petlje se postiže korištenjem cijelih brojeva od 1 do n, a izraz <= n se koristi kao kriterij za zaustavljanje daljnjeg petljanja. Stoga možemo zaključiti da se isti rezultati mogu postići korištenjem rekurzije i iteracije. Međutim, obje se temelje na pristupima koji su malo drugačiji. Bilo koji rekurzivni algoritam može biti napisan pomoću iteracija (petlji).

Usporedba rekurzije i ponavljanja:

rekurzije

ponavljanje

definicija

Rekurzija se odnosi na rekurzivnu funkciju u kojoj se ponovno poziva da ponovi kod.

Ponavljanje se postiže iterativnom funkcijom koja ponavlja neke dijelove koda.

Važna točka

Potrebno je odrediti osnovni slučaj

Potrebno je odrediti uvjet prekida

Izvođenje

Usporedno sporo

Usporedno brzo

Upotreba memorije

Komparativno više

Komparativno manje

Kodirati

Manji

Više

Beskonačno ponavljanje

Beskonačna rekurzija je u stanju srušiti sustav

Beskonačna petlja opetovano troši procesorske cikluse

Struktura

Izbor

Ponavljanje

Lokalne varijable

Nije obavezno

Potreban

Preporučeno

Vezani Članci

  • razlika između: Razlika između napornog rada i pametnog rada

    Razlika između napornog rada i pametnog rada

    Ključna razlika: težak posao je kada netko radi nešto posvećeno. Pametan rad je kada netko radi istu količinu posla, ali brže i učinkovitije. Većina gurua samopomoći će zagovarati tu činjenicu, da bi uspjeli, netko mora naporno raditi na tome. Oni čak mogu reći da mu morate dati sve od trenutka kada se probudite do trenutka kada odete na spavanje. Iako je to
  • razlika između: Razlika između letenja i levitacije

    Razlika između letenja i levitacije

    Ključna razlika: Letenje je nešto što rade ptice, avioni i / ili Superman. Pomislite kako se te stvari kreću u zraku. Imaju svrhu, smjer; oni imaju kontrolu nad svojim kretanjima. Mogu ići kamo žele ili kamo trebaju ići, tj. Od točke A do točke B. Levitacija, s druge strane, je kada se osoba uzdiže u zraku, na maloj udaljenosti od tla, obično ne više od nekoliko metara. Osoba može
  • razlika između: Razlika između pećnice i roštilja

    Razlika između pećnice i roštilja

    Ključna razlika: Pećnica je toplinski izolirana komora koja se koristi za grijanje, pečenje ili sušenje tvari. Najčešće se koristi za kuhanje. Roštilji su prisutni od pronalaska vatre. Djeluje tako što hranu stavlja na žičanu mrežu neposredno iznad vatre, dopuštajući vatri da kuha meso ili povrće. Peći postoje
  • razlika između: Razlika između Alcatel One Touch Idol i Asus FonePad

    Razlika između Alcatel One Touch Idol i Asus FonePad

    Ključna razlika: Alcatel One Touch Idol je službeni mobilni partner za film Iron Man 3. Ima 4, 7-inčni IPS LCD kapacitivni zaslon osjetljiv na dodir s 16 milijuna boja. Zaslon ima rezoluciju od 540 x 960 piksela. Telefon se napaja pomoću dual-core 1 GHz MediaTek MTK 6577+ i 512 MB RAM-a. Asus je najavio najnoviji phablet, Asus Fonepad. Fo
  • razlika između: Razlika između DSP i mikroprocesora

    Razlika između DSP i mikroprocesora

    Ključna razlika: mikroprocesor uključuje funkcije središnje procesorske jedinice računala (CPU) na jednom ili nekoliko integriranih krugova (IC). Svrha mikroprocesora je prihvatiti digitalne podatke kao ulaz, obraditi ih prema uputama, a zatim dati izlaz. DSP procesor je, s druge strane, posebna vrsta mikroprocesora. DS
  • razlika između: Razlika između jednog rođenja i više rođenja

    Razlika između jednog rođenja i više rođenja

    Ključna razlika: Pojedinačno rođenje je kada žena u jednom razdoblju trudnoće zatrudni. Višestruka su rođenja kada žena u jednoj trudnoći zamisli više od jednog fetusa. Kada žena zatrudni uvijek postoji vjerojatnost da će imati više od jednog djeteta u istoj trudnoći; što je veći broj fetusa, to se rjeđe događa. Na primjer, bliz
  • razlika između: Razlika između mašte i fantazije

    Razlika između mašte i fantazije

    Ključna razlika: Mašta je iskustvo koje netko ima kada se bavi stvarnošću, ili kako se nose s realnošću, dok je fantazija nerealan nusprodukt te mašte. Često je lako zamijeniti maštu i maštu kao isto ili čak slične stvari. Međutim, oni su potpuno različiti, ali vrlo povezani. Razmotrimo oba pojma detaljno. Imaginacija
  • razlika između: Razlika između predanog i odnosa

    Razlika između predanog i odnosa

    Ključna razlika: predanost i odnos su dva termina koja se obično smatraju statusima, koji predstavljaju opće ljubavne odnose u životu pojedinca. Izraz 'predan' dolazi od riječi '' predanost '', što predstavlja pouzdan i rezerviran tip odnosa. Biti „u vezi“ jednostavno znači fazu u kojoj dvije osobe dijele svoje vrijeme jedni s drugima. Pojmovi &
  • razlika između: Razlika između prideva i priloga

    Razlika između prideva i priloga

    Ključna razlika: Pridjevi i prilozi dio su osam dijelova govora. Međutim, oni se razlikuju u načinu na koji se koriste. Pridjevi su riječi koje se koriste za opisivanje ili izmjenu imenice ili zamjenice. Može opisati, identificirati ili kvantificirati stvar ili osobu. Prilog je u biti bilo koja riječ ili riječ koja se koristi za opisivanje ili izmjenu glagola, pridjeva ili drugog priloga. Pridj

Izbor Urednika

Razlika između želuca i kiselosti

Ključna razlika: Medicinski, želudac se odnosi na sve što se odnosi na želudac, kao što je čir na želucu definira čir koji se formira u želucu. S druge strane, kiselost se odnosi na bilo koju vrstu stanja koje dovodi do prekomjernog izlučivanja kiseline iz želučanih žlijezda. Mnogi ljudi smatraju želudac i kiselost kao jednu te istu stvar. Međutim, žel