Heim  >  Artikel  >  Backend-Entwicklung  >  Rekursives Programm zum Ermitteln minimaler und maximaler Elemente eines Arrays in C++

Rekursives Programm zum Ermitteln minimaler und maximaler Elemente eines Arrays in C++

WBOY
WBOYnach vorne
2023-08-31 19:37:05963Durchsuche

Rekursives Programm zum Ermitteln minimaler und maximaler Elemente eines Arrays in C++

Wir nehmen das Integer-Array Arr[] als Eingabe. Ziel ist es, mithilfe einer rekursiven Methode die größten und kleinsten Elemente in einem Array zu finden.

Da wir Rekursion verwenden, durchlaufen wir das gesamte Array, bis wir Länge=1 erreichen und geben dann A[0] zurück, was den Basisfall bildet. Andernfalls wird das aktuelle Element mit dem aktuellen Minimal- oder Maximalwert verglichen und sein Wert für nachfolgende Elemente rekursiv aktualisiert.

Schauen wir uns dazu verschiedene Eingabe- und Ausgabeszenarien an −

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

Ausgabe − Maximalwert im Array: 99

Erläuterung − Unter allen Elementen ist 99 der größte Wert.

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

Ausgabe − Mindestwert im Array: -99

Erläuterung − Unter allen Elementen ist -99 der Ort Mindestwert.

Die im folgenden Programm verwendete Methode lautet wie folgt:

Finden Sie den Mindestwert.

  • Das Array Arr[] wird als Eingabe verwendet.

  • Die Funktion recforMin(int arr[], int len) akzeptiert ein Eingabearray und seine Länge und gibt mittels Rekursion den Mindestwert im Array zurück.

  • Erhalten Sie das Minimum der Ganzzahlvariablen.

  • Wenn die aktuelle Indexlänge 1 ist, setzen Sie Minimum=arr[0] und geben Sie Minimum zurück.

  • Andernfalls setzen Sie Minimum = arr[len] oder den Mindestwert von recforMin(arr,len-1) und geben Sie ihn zurück.

  • Endlich wird das kleinste Element zurückgegeben.

  • Drucken Sie das Ergebnis in der Hauptfunktion aus.

Finden Sie den Maximalwert.

  • Nimmt das Array Arr[] als Eingabe.

  • Die Funktion recforMax(int ​​​​arr[], int len) akzeptiert ein Eingabearray und seine Länge und gibt mittels Rekursion den Maximalwert im Array zurück.

  • Nehmen Sie das Maximum der Ganzzahlvariablen.

  • Wenn die aktuelle Indexlänge 1 ist, setzen Sie Maximum=arr[0] und geben Sie Maximum zurück.

  • Andernfalls setzen Sie „maximum = arr[len]“ oder den Maximalwert von „recforMax(arr,len-1)“ und geben Sie ihn zurück.

  • Das größte Element wird am Ende zurückgegeben.

  • Drucken Sie das Ergebnis in der Hauptfunktion aus.

Mindestwert mithilfe der Rekursion ermitteln

Beispiel

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

Ausgabe

Wenn wir den obigen Code ausführen, wird die folgende Ausgabe generiert:

Minimum in the array :-89

Mindestwert mithilfe der Rekursion ermitteln

Beispiel

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

Ausgabe

Wenn wir Wenn Sie den obigen Code ausführen, wird die folgende Ausgabe generiert:

Maximum in the array :-100

Das obige ist der detaillierte Inhalt vonRekursives Programm zum Ermitteln minimaler und maximaler Elemente eines Arrays in C++. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:tutorialspoint.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen