Diferența dintre recurs și iterație

Diferența cheie: în programare, recursul poate fi explicat prin examinarea unei funcții recursive. O funcție recursivă este aceea care se recheamă din nou pentru a repeta codul. Pe de altă parte, iterația este realizată printr-o funcție iterativă care buclează pentru a repeta o anumită secțiune a codului.

În programare, recursiunea și repetarea sunt folosite pentru a obține repetări. Ele se referă la un proces care se repetă de mai multe ori. Recurgerea se bazează pe o abordare în care ceva se referă la ea însăși până când o condiție este îndeplinită. Se spune că o metodă este recursivă dacă se poate numi în mod direct sau indirect -

nume nevalid ()

{

... Nume() ...

}

sau

nume nevalid ()

{

... joc() ...

}

void game () {

... Nume() ...

}

Pentru o recursiune reușită, trebuie să rețineți că fiecare apel făcut în procesul de recursiune trebuie să simplifice calculul. Recurgerea se realizează prin definirea unui caz de bază.

int factorial (int N)

{

dacă (N == 0) retur 1;

alt retur (N * factorial (N-1));

}

În acest exemplu, recursiunea poate fi văzută cu ușurință în instrucțiunea (N * factorial (N-1)), unde se apelează din nou funcția factorială. Recurgerea este foarte utilă deoarece ajută la scurtarea codului. Cu toate acestea, recursiunea este un ritm lent de performanță.

Iterația se bazează pe bucle. Aceste bucle se referă la procese iterative explicite. Pentru a îndeplini cerința unei buclă, trebuie să aibă un anumit tip de criterii care să oprească o nouă iterație. Cu toate acestea, dacă testul condiției de buclă nu devine niciodată fals, atunci în această condiție apariția unei buclă infinită este inevitabilă. În acest exemplu, factorialul este determinat prin utilizarea procesului de iterație -

funcție factorial (n)

{

var buclă, rezultat;

rezultat = 1;

pentru (loop = 1; bucla <= n; buclă ++)

{

rezultat = rezultat * buclă;

}

rezultatul retur;

}

În acest exemplu, looping-ul este realizat prin folosirea numerelor întregi de la 1 la n, iar buclă <= n este folosită ca un criteriu pentru a opri buclele. Astfel, putem concluziona că aceleași rezultate pot fi obținute folosind o recursivitate și o iterație. Cu toate acestea, ambele se bazează pe abordări care sunt puțin diferite. Orice algoritm recursiv poate fi scris și prin iterații (bucle).

Comparație între Recursion și Iteration:

Recursivitate

Repetare

Definiție

Recurgerea se referă la o funcție recursivă în care se solicită din nou să repete codul.

Iterația se realizează printr-o funcție iterativă care buclează pentru a repeta o anumită secțiune a codului.

Punct important

Un caz de bază trebuie determinat

Trebuie stabilită o condiție de terminare

Performanţă

Comparativ lent

Comparativ rapid

Folosirea memoriei

Comparativ mai mult

Comparativ mai puțin

Cod

Mai mici

Mai lung

Repetarea infinită

Recurgerea infinită este capabilă să prăbușească sistemul

Inceputul de buclă consumă în mod repetat ciclurile procesorului

Structura

Selecţie

Repetiţie

Variabile locale

Nu este necesar

Necesar

Recomandat

Articole Similare

  • diferență între: Diferența dintre fila Sony Xperia Z și Google Nexus 10

    Diferența dintre fila Sony Xperia Z și Google Nexus 10

    Diferența cheie: Sony a anunțat recent linia de smartphone-uri și tablete revăzute. Împreună cu noul telefon Sony Xperia Z, compania a adăugat, de asemenea, o nouă tabletă, fișierul Sony Xperia Z. Tableta acceptă un touchscreen capacitiv TFT de 10, 1 inch și este creat utilizând tehnologia Sony Mobile BRAVIA Engine 2. În plus, Ne
  • diferență între: Diferența dintre liposucția și chirurgia bariatrică

    Diferența dintre liposucția și chirurgia bariatrică

    Diferența cheie : Liposucția este o operație cosmetică prin care grăsimea este îndepărtată din diferite părți ale corpului. Se utilizează un dispozitiv de aspirație care se introduce prin mici incizii făcute pe partea dorită a corpului. Pe de altă parte, chirurgia bariatrică este o intervenție chirurgicală efectuată pe stomac sau pe intestin. Este destinat per
  • diferență între: Diferența dintre ginecolog și obstetrician

    Diferența dintre ginecolog și obstetrician

    Diferența cheie: Un ginecolog este un medic care se ocupă de sănătatea reproductivă a femeilor. Pe de altă parte, un obstetrician este un medic care asigură îngrijirea femeilor, în special în timpul sarcinii și după nașterea copilului. Ginecologul este un medic care examinează problemele sistemului reproductiv al unei femei. Ele sunt în
  • diferență între: Diferența dintre obiective și rezultat

    Diferența dintre obiective și rezultat

    Diferența cheie: Un scop este un rezultat dorit pe care o persoană dorește să-l atingă. Este o țintă pe care o persoană dorește să o atingă. Este un punct final în care o persoană se vede după o anumită perioadă de timp. În timp ce obiectivele sunt repere pe care o persoană dorește să le atingă, rezultatele sunt rezultatele posibile care vor fi obținute atunci când o persoană completează piatra de hotar. Rezultatul este, în pri
  • diferență între: Diferența dintre PSD și PNG

    Diferența dintre PSD și PNG

    Diferența principală: PSD este extensia de fișier implicită pentru fișierele Photoshop. PSD înseamnă de fapt "documentul Photoshop". PNG reprezintă Portable Network Graphics. Acesta a fost creat ca un înlocuitor îmbunătățit și nepatentat pentru Graphics Interchange Format (GIF). Există multe
  • diferență între: Diferența dintre branza de orez și Husk de orez

    Diferența dintre branza de orez și Husk de orez

    Diferența principală: Orezul Bran este un produs secundar obținut din procesul de măcinare a orezului, în timp ce Rice Husk (Rice Hull) este capacul de protecție dur al cerealelor. Ambele sunt produsele secundare de cereale de orez; adesea considerate a fi aceleași. Ca produs secundar; nu există nici o diferență între tărâțele de orez și cojile de orez; ele sunt considerate a fi aceleași. Acestea sunt a
  • diferență între: Diferența dintre dicție și ton

    Diferența dintre dicție și ton

    Diferența cheie: Dicționarea are două semnificații diferite. Primul înțeles se referă la alegerile distinctive ale vocabularului scriitorului sau vorbitorului și la stilul de exprimare într-un poem sau poveste. Al doilea înțeles este caracterul distinctiv al cuvântului sau modul în care o persoană vorbește că fiecare cuvânt este clar și ușor de înțeles. În afară de alegere
  • diferență între: Diferența dintre obiectiv și scop

    Diferența dintre obiectiv și scop

    Diferența cheie: Un scop este un rezultat dorit pe care o persoană dorește să-l atingă. Este o țintă pe care o persoană dorește să o atingă. Este un punct final în care o persoană se vede după o anumită perioadă de timp. Obiectivele pot fi pe termen scurt sau lung. Scopul încearcă să evalueze motivul din spatele a ceva ce se face. Scopul definește
  • diferență între: Diferența dintre țările dezvoltate și cele în curs de dezvoltare

    Diferența dintre țările dezvoltate și cele în curs de dezvoltare

    Diferența principală: Se consideră că o țară se dezvoltă sau se dezvoltă în principal pe baza economiei, a venitului pe cap de locuitor, a industrializării, a gradului de alfabetizare, a nivelului de trai etc. O țară dezvoltată are o economie foarte dezvoltată și o infrastructură tehnologică avansată față de alte națiuni mai puțin dezvoltate . Potrivit lui Kofi An

Alegerea Editorului

Diferența dintre uscătorul de păr ionic și turmalină

Diferența cheie: Uscătoarele de păr ionice sunt cele mai recente fenomene și au fost lansate pe piață la începutul anilor 2000. Aceste uscătoare de păr produc ioni negativi pe păr pentru a usca părul. Ionii negativi sigilează cuticulele părului, determinându-le să prindă umezeala în timp ce usucă părul. Uscătoarele de pă