Maison >développement back-end >C++ >Programme récursif pour trouver les éléments minimum et maximum d'un tableau en C++

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

WBOY
WBOYavant
2023-08-31 19:37:051014parcourir

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;
}

Sortie

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

Minimum in the array :-89

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;
}

Sortie

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

Maximum in the array :-100

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!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer