Maison > développement back-end > C++ > le corps du texte

Programme récursif pour trouver les éléments minimum et maximum d'un tableau en C++

WBOY
Libérer: 2023-08-31 19:37:05
avant
951 Les gens l'ont consulté

Programme récursif pour trouver les éléments minimum et maximum dun tableau en C++

Nous prenons le tableau d'entiers Arr[] comme entrée. Le but est de trouver les éléments les plus grands et les plus petits d’un tableau en utilisant une méthode récursive.

Puisque nous utilisons la récursion, nous allons parcourir l'ensemble du tableau jusqu'à ce que nous atteignions length=1, puis retourner A[0], qui constitue le cas de base. Sinon, l'élément actuel est comparé à la valeur minimale ou maximale actuelle et sa valeur est mise à jour de manière récursive pour les éléments suivants.

Regardons différents scénarios d'entrée et de sortie pour cela −

Input − Arr= {12,67,99,76,32};

Output − Valeur maximale dans le tableau : 99

Explication − Parmi tous les éléments, 99 est la plus grande valeur parmi eux.

Input − Arr= {1,0,-99,9,3};

Output − Valeur minimale dans le tableau : -99

Explication − Parmi tous les éléments, -99 est l'endroit où le valeur minimale.

La méthode utilisée dans le programme ci-dessous est la suivante

Trouver la valeur minimale

  • Le tableau Arr[] est utilisé comme entrée.

  • La fonction recforMin(int arr[], int len) accepte un tableau d'entrée et sa longueur et renvoie la valeur minimale du tableau en utilisant la récursion.

  • Obtenez la variable entière minimum

  • Si l'index actuel len est 1, définissez minimum=arr[0] et renvoyez le minimum.

  • Sinon, définissez minimum = arr[len] ou la valeur minimale de recforMin(arr,len-1) et renvoyez-la.

  • Enfin le plus petit élément sera restitué.

  • Imprimez le résultat dans la fonction principale.

Trouver la valeur maximale

  • prend le tableau Arr[] en entrée.

  • La fonction recforMax(int ​​​​arr[], int len) accepte un tableau d'entrée et sa longueur et renvoie la valeur maximale dans le tableau en utilisant la récursion.

  • Prenez le maximum de variable entière.

  • Si l'index actuel len est 1, définissez maximum=arr[0] et renvoyez maximum.

  • Sinon, définissez maximum = arr[len] ou la valeur maximale de recforMax(arr,len-1) et renvoyez-la.

  • Le plus gros élément sera restitué à la fin.

  • Imprimez le résultat dans la fonction principale.

Trouver la valeur minimale en utilisant la récursion

Exemple

#include <iostream>
using namespace std;
int recforMin(int arr[], int len){
   int minimum;
   if (len == 1){
      minimum=arr[0];
      return minimum;
   }
   else{
      return minimum=arr[len]<recforMin(arr,len-1)?arr[len]:recforMin(arr,len-1);
   }
}
int main(){
   int Arr[] = {-89,98,76,32,21,35,100};
   int length = sizeof(Arr)/sizeof(Arr[0]);
   cout <<"Minimum in the array :"<<recforMin(Arr, length);
   return 0;
}
Copier après la connexion

Sortie

Si nous exécutons le code ci-dessus, la sortie suivante sera générée

Minimum in the array :-89
Copier après la connexion

Trouver la valeur minimale en utilisant la récursion

Exemple

#include <iostream>
using namespace std;
int recforMax(int arr[], int len){
   int maximum;

   if (len == 1){
      maximum=arr[0];
      return maximum;
   }
   else{
      return maximum=arr[len]>recforMax(arr,len-1)?arr[len]:recforMax(arr,len-1);
   }
}
int main(){
   int Arr[] = {-89,98,76,32,21,35,100};
   int length = sizeof(Arr)/sizeof(Arr[0]);
   cout <<"Maximum in the array :"<<recforMax(Arr, length);
   return 0;
}
Copier après la connexion

Sortie

Si nous exécutez le code ci-dessus, générera la sortie suivante

Maximum in the array :-100
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:tutorialspoint.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!