Différence entre récursivité et itération

Différence clé: en programmation, la récursivité peut être expliquée en considérant une fonction récursive. Une fonction récursive est une fonction qui se rappelle pour répéter le code. D'autre part, l'itération est réalisée par une fonction itérative qui boucle pour répéter une partie du code.

En programmation, la récursivité et l'itération sont toutes deux utilisées pour réaliser des répétitions. Ils font référence à un processus répété plusieurs fois. La récursivité est basée sur une approche dans laquelle quelque chose se réfère à lui-même jusqu'à ce qu'une condition soit remplie. Une méthode est dite récursive si elle peut s'appeler directement ou indirectement comme

nom vide ()

{

... prénom() ...

}

ou

nom vide ()

{

... Jeu() ...

}

void game () {

... prénom() ...

}

Pour une récursivité réussie, il faut garder à l'esprit que chaque appel effectué dans le processus de récursivité doit simplifier le calcul. La récursivité est obtenue en définissant un cas de base.

int factoriel (int N)

{

si (N == 0) retourne 1;

sinon return (N * factoriel (N-1));

}

Dans cet exemple, la récursivité est facilement visible dans l'instruction (N * factorielle (N-1)), où elle appelle à nouveau la fonction factorielle. La récursivité est très utile car elle aide à raccourcir le code. Cependant, la récursivité est un peu lente dans les performances.

L'itération est basée sur les boucles. Ces boucles font référence à des processus d'itération explicites. Pour satisfaire à l'exigence d'une boucle, il doit avoir un type de critère qui arrête l'itération ultérieure. Cependant, si le test de condition de boucle ne devient jamais faux, alors dans cette condition, l'occurrence d'une boucle infinie est inévitable. Dans cet exemple, la factorielle est déterminée en utilisant le processus d'itération -

fonction factorielle (n)

{

boucle var, resultat;

résultat = 1;

pour (boucle = 1; boucle <= n; boucle ++)

{

result = result * loop;

}

retourne le résultat;

}

Dans cet exemple, la mise en boucle est réalisée à l'aide d'entiers de 1 à n, et l'instruction loop <= n est utilisée comme critère pour arrêter toute mise en boucle. Ainsi, nous pouvons conclure que les mêmes résultats peuvent être obtenus en utilisant une récursion et une itération. Cependant, ils reposent tous deux sur des approches légèrement différentes. Tout algorithme récursif peut également être écrit en utilisant des itérations (boucles).

Comparaison entre la récursivité et l'itération:

Récursion

Itération

Définition

La récursivité fait référence à une fonction récursive dans laquelle il s’appelle à nouveau pour répéter le code.

L'itération est réalisée par une fonction itérative qui boucle pour répéter une partie du code.

Point important

Un cas de base doit être déterminé

Une condition de résiliation doit être déterminée

Performance

Comparativement lente

Relativement rapide

Utilisation de la mémoire

Comparativement plus

Comparativement moins

Code

Plus petite

Plus long

Répétition infinie

La récursion infinie est capable de planter le système

La boucle infinie consomme des cycles du processeur à plusieurs reprises

Structure

Sélection

Répétition

Variables locales

Non requis

Champs obligatoires

Recommandé

Articles Connexes

  • comparaisons populaires: Différence entre nominalisme et humanisme

    Différence entre nominalisme et humanisme

    Différence clé : le nominalisme est une vision de la philosophie dans laquelle existent des termes généraux et des prédicats, alors que les universels ou les objets abstraits qui se rapportent à ces termes n'existent pas. L'humanisme est un groupe de philosophies et de perspectives éthiques qui mettent l'accent sur les intérêts, les valeurs et la dignité de l'homme. L’humani
  • comparaisons populaires: Différence entre xénophobie et racisme

    Différence entre xénophobie et racisme

    Différence clé: la xénophobie est la peur du différent et l'hésitation d'accepter l'inconnu, tandis que le racisme est un rejet catégorique de quelqu'un qui est différent de vous en termes de race, de couleur, d'ethnie, etc. La xénophobie et le racisme sont deux termes de nature similaire et sont donc considérés comme interchangeables, bien que ce ne soit pas vrai. Ces mots
  • comparaisons populaires: Différence entre les LG Optimus L5 II, L5 II Dual et Xolo Q800

    Différence entre les LG Optimus L5 II, L5 II Dual et Xolo Q800

    Différence clé: le LG Optimus L5 II et son homologue LG Optimus L5 II Dual sont deux smartphones d'entrée de gamme de la société. Les LG Optimus L5 II et L5 II Dual sont assez similaires, mais diffèrent à certains endroits, y compris les apparences. L'appareil est livré avec un écran tactile capacitif LCD True IPS de 4 pouces offrant une densité de pixels d'environ 233 ppp. Le Xolo
  • comparaisons populaires: Différence entre marionnettes et chef

    Différence entre marionnettes et chef

    Différence essentielle: Puppet est un outil de gestion de la configuration écrit en ruby. C'est un produit de Puppet Labs. Chef est aussi un outil de configuration, mais il est écrit en ruby ​​et erlang. C'est un produit de Opscode. Les deux outils diffèrent principalement par la technologie. La tec
  • comparaisons populaires: Différence entre KH / s, MH / s et GH / s

    Différence entre KH / s, MH / s et GH / s

    Différence clé: 1 KH / s équivaut à 1 000 hachages par seconde. 1 MH / s correspond à 1 000 000 de hachage par seconde. 1 GH / s correspond à 1 000 000 000 de hachages par seconde. KH / s, MH / s et GH / s sont des termes qui constituent une part importante de l’extraction de données et de l’extraction de pièces de monnaie. Ces termes
  • comparaisons populaires: Différence entre la cellule et le tissu

    Différence entre la cellule et le tissu

    Principale différence: les cellules constituent la plus petite unité de vie à la base d'un organisme. Les tissus sont des groupes de cellules partageant les mêmes idées et travaillant ensemble. Les cellules et les tissus sont tous deux structurellement importés dans un organisme. Sans chacun, l'organisme ne pourra pas fonctionner. Les
  • comparaisons populaires: Différence entre Xbox et Xbox360

    Différence entre Xbox et Xbox360

    Différence clé: la Xbox est une console de jeu vidéo de sixième génération et a fait ses débuts en 2001 en Amérique du Nord. La Xbox360 a fait ses débuts en 2005 en tant que successeur de la Xbox et tombe dans la catégorie de la septième génération. Les deux sont des produits de Microsoft. La principa
  • comparaisons populaires: Différence entre le karaté et le judo

    Différence entre le karaté et le judo

    Principale différence : une différence essentielle entre le karaté et le judo réside dans le fait que ce dernier est connu pour ses techniques de lutte et de lancer, tandis que le karaté est réputé pour ses techniques de frappe. Le karaté est un terme dérivé de la fusion de deux mots: «kara» et «te». Kara signifi
  • comparaisons populaires: Différence entre l'offre et la demande

    Différence entre l'offre et la demande

    Différence clé: en économie de base, l’offre est la quantité d’un certain produit que le producteur est disposé et capable de le vendre à un certain prix, si tous les autres facteurs sont constants. La demande est le principe qui explique le désir et la volonté d'un consommateur d'acheter un certain bien et le montant d'argent qu'il dépensera pour ce produit. La demande

Choix De L'Éditeur

Différence entre le soja et la sauce soja

Différence clé: Le soja ou soja est également appelé soja ou soja. C'est un type de légumineuse, semblable aux arachides, aux haricots rouges, aux pois, etc. La sauce de soja ou la sauce de soja est une sauce obtenue par fermentation de la graine de soja. Par conséquent, la sauce de soja est un sous-produit du soja. Le s