


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!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



Der Leistungsvergleich der PHP-Methoden zum Umdrehen von Array-Schlüsselwerten zeigt, dass die Funktion array_flip() in großen Arrays (mehr als 1 Million Elemente) eine bessere Leistung als die for-Schleife erbringt und weniger Zeit benötigt. Die for-Schleifenmethode zum manuellen Umdrehen von Schlüsselwerten dauert relativ lange.

Rekursion ist eine leistungsstarke Technik, die es einer Funktion ermöglicht, sich selbst aufzurufen, um ein Problem zu lösen. In C++ besteht eine rekursive Funktion aus zwei Schlüsselelementen: dem Basisfall (der bestimmt, wann die Rekursion stoppt) und dem rekursiven Aufruf (der das Problem aufteilt). kleinere Teilprobleme). Indem Sie die Grundlagen verstehen und praktische Beispiele wie faktorielle Berechnungen, Fibonacci-Folgen und binäre Baumdurchläufe üben, können Sie Ihre rekursive Intuition entwickeln und sie sicher in Ihrem Code verwenden.

Rekursion ist eine Technik, bei der sich eine Funktion selbst aufruft, aber die Nachteile eines Stapelüberlaufs und einer Ineffizienz aufweist. Zu den Alternativen gehören: Tail-Recursion-Optimierung, bei der der Compiler rekursive Aufrufe in Schleifen optimiert, die Schleifen anstelle von Rekursion und Coroutinen verwenden, die das Anhalten und Fortsetzen der Ausführung ermöglichen und so rekursives Verhalten simulieren.

Die PHP-Funktion array_group_by kann Elemente in einem Array basierend auf Schlüsseln oder Abschlussfunktionen gruppieren und ein assoziatives Array zurückgeben, wobei der Schlüssel der Gruppenname und der Wert ein Array von Elementen ist, die zur Gruppe gehören.

Rekursive Definition und Optimierung: Rekursiv: Eine Funktion ruft sich intern auf, um schwierige Probleme zu lösen, die in kleinere Teilprobleme zerlegt werden können. Schwanzrekursion: Die Funktion führt alle Berechnungen durch, bevor sie einen rekursiven Aufruf durchführt, der in eine Schleife optimiert werden kann. Optimierungsbedingung für die Schwanzrekursion: Der rekursive Aufruf ist die letzte Operation. Die rekursiven Aufrufparameter sind dieselben wie die ursprünglichen Aufrufparameter. Praktisches Beispiel: Fakultät berechnen: Die Hilfsfunktion Factorial_helper implementiert die Schwanzrekursionsoptimierung, eliminiert den Aufrufstapel und verbessert die Effizienz. Fibonacci-Zahlen berechnen: Die Schwanzrekursivfunktion fibonacci_helper nutzt die Optimierung, um Fibonacci-Zahlen effizient zu berechnen.

Mit der Funktion array_group() von PHP kann ein Array nach einem angegebenen Schlüssel gruppiert werden, um doppelte Elemente zu finden. Diese Funktion durchläuft die folgenden Schritte: Verwenden Sie key_callback, um den Gruppierungsschlüssel anzugeben. Verwenden Sie optional value_callback, um Gruppierungswerte zu bestimmen. Zählen Sie gruppierte Elemente und identifizieren Sie Duplikate. Daher ist die Funktion array_group() sehr nützlich, um doppelte Elemente zu finden und zu verarbeiten.

Zum Debuggen rekursiver Funktionen stehen die folgenden Techniken zur Verfügung: Überprüfen Sie den Stack-Trace. Legen Sie Debug-Punkte fest. Überprüfen Sie, ob der Basisfall korrekt implementiert ist. Zählen Sie die Anzahl der rekursiven Aufrufe. Visualisieren Sie den rekursiven Stack

Ja, in vielen Programmiersprachen können Arrays als Funktionsparameter verwendet werden und die Funktion führt Operationen an den darin gespeicherten Daten aus. Beispielsweise kann die printArray-Funktion in C++ die Elemente in einem Array drucken, während die printArray-Funktion in Python ein Array durchlaufen und seine Elemente drucken kann. Durch diese Funktionen am Array vorgenommene Änderungen werden auch im ursprünglichen Array der aufrufenden Funktion widergespiegelt.
