


So implementieren Sie die Java-Binärsuche mithilfe eines rekursiven Algorithmus
So implementieren Sie den rekursiven Algorithmus der binären Suche in Java
Binäre rekursive Suche in öffentlichen Klassen {
public static void main(String[] args) ist der Einstiegspunkt des Java-Programms und die Startposition der Programmausführung. Mit dieser Methode können die Hauptlogik und Funktionalität des Programms geschrieben werden. Diese Methode muss in einem bestimmten Format definiert werden, bevor sie von der Java Virtual Machine aufgerufen und ausgeführt werden kann. In der Parameterliste der Hauptmethode ist args ein String-Array, das zum Empfang von Befehlszeilenparametern verwendet werden kann. Durch das Schreiben von Code in der Hauptmethode können wir verschiedene Funktionen implementieren, z. B. Ausdruck, Berechnung, Schleife, bedingte Beurteilung usw. {
//Definieren Sie das Array. Das binäre Sucharray muss ein geordnetes Array sein!
int[] arr = { 1, 3, 5, 7, 9, 11, 13, 15, 17 } ist die Deklarations- und Initialisierungsanweisung eines ganzzahligen Arrays, das 9 Elemente enthält. Der Wert jedes Elements ist 1, 3, 5, 7, 9, 11, 13, 15, 17. Auf diese Weise erstellen wir ein Integer-Array mit dem Namen arr und weisen ihm einen Anfangswert zu. In nachfolgenden Programmen können wir dieses Array verwenden, um verschiedene Vorgänge wie Suchen, Sortieren und Zählen auszuführen
//Übernehmen Sie den Rückgabewert nach der Suche: Indexwert, wenn nicht, ist er -1;
//Testelement finden: 9
int a = BinarySearch(arr, 9, 0, arr.length - 1);
System.out.println("Die Indexposition der gesuchten Nummer ist: " + a);
}
//Die Parameterliste ist: zu durchsuchendes Array, zu suchende Nummer, Kopfindex, Endindex!
public static int Binary(int[] arr, int key, int start, int end) // Rekursion
{
//Erstellen Sie jedes Mal einen Zwischenindexwert!
int mid = (Stern + Ende) / 2;
Wenn die zu findende Zahl kleiner als der Startindex oder größer als der Endindex ist oder der Startindex größer als der Endindex ist, bedeutet dies, dass die Zahl nicht existiert und -1 zurückgegeben wird.
if (Taste arr[end] || start > end) {
return -1;
}
//Wenn der Mittelwert kleiner als die gesuchte Zahl ist, definieren Sie den Header-Index neu und verschieben Sie ihn an die mittlere +1-Position, sodass die Hälfte der Zahlen herausgefiltert werden kann!
if (arr[mid] //Rekursion starten! return Binary(arr, key, mid + 1, end); // Binäre Suche in der zweiten Hälfte des Arrays fortsetzen //Andernfalls, wenn der mittlere Wert größer als die gesuchte Zahl ist, verschieben Sie den Endindex zurück auf die mittlere Position von -1, damit die Hälfte der Zahlen herausgefiltert werden kann! } else if (arr[mid] > key) { //Rekursion starten! binär zurückgeben(arr, key, start, mid - 1); } sonst { //Wenn nicht, wird es gefunden, zurück zum Index! Rückkehr Mitte; } } } Erste Frage: öffentliche Klasse CalSum { public static void main(String[] args) ist der Einstiegspunkt des Java-Programms und die Startposition der Programmausführung. Mit dieser Methode können die Hauptlogik und Funktionalität des Programms geschrieben werden. Diese Methode muss in einem bestimmten Format definiert werden, bevor sie von der Java Virtual Machine aufgerufen und ausgeführt werden kann. In der Parameterliste der Hauptmethode ist args ein String-Array, das zum Empfang von Befehlszeilenparametern verwendet werden kann. Durch das Schreiben von Code in der Hauptmethode können wir verschiedene Funktionen implementieren, z. B. Ausdruck, Berechnung, Schleife, bedingte Beurteilung usw. { CalSum calSum = new CalSum(); int result = calSum.calculate(100); // Rufen Sie die Methode „calculate“ des calSum-Objekts auf, übergeben Sie den Parameter 100 und weisen Sie das Ergebnis der Ergebnisvariablen zu. System.out.println("Die Summe von 1+2+3+...+100 ist gleich" + Ergebnis); } öffentliche int-Berechnung (int-Zahl) { int Ergebnis = 0; if(number == 1) { Ergebnis = 1; } sonst { result = Zahl + berechne(Zahl - 1); Das Ergebnis besteht darin, die aktuelle Zahl und den Rückgabewert von Zahl-1 zu addieren. Dieser Ausdruck kann rekursiv berechnet werden. Bei jedem rekursiven Aufruf wird der Wert von Zahl um 1 dekrementiert, bis die Rekursion stoppt, wenn Zahl gleich 1 ist. Der Rückgabewert des rekursiven Aufrufs wird kontinuierlich im Endergebnis akkumuliert. Auf diese Weise können wir die Summe einer Folge erhalten. } Rückgabeergebnis; } }
public int sum(int x){ if(x return x; } return x+sum(x-1); } int s=10; int total=sum(s); In diesem Beispiel ruft sich die Summenfunktion immer selbst auf und gibt x+sum(x-1); zurück. Summe hat Exit-Bedingung, x
Das Endergebnis ist 10+9+8+7+... 1 In vielen Fällen können sowohl Iteration als auch Rekursion dieselbe Funktion erreichen, es gibt jedoch einige Funktionen, die durch Iteration nicht ausgeführt werden können. Darüber hinaus ist rekursiver Code präziser und eine kompetente Verwendung der Rekursion kann die Codequalität verbessern. Die JAVA-Sprache für Expertenprogrammierung verwendet einen rekursiven Algorithmus und 1 2 3 4 100 oder 11 13 15
Was sind die Algorithmen der Rekursion und Iteration in Java?
Iteration ist eine normale Schleife.
Das obige ist der detaillierte Inhalt vonSo implementieren Sie die Java-Binärsuche mithilfe eines rekursiven Algorithmus. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Die Datenwiederherstellung ist immer ein erhitztes Thema. Um Daten von Ihrem Gerät erfolgreich wiederherzustellen, sollten Sie wissen, wie Daten gespeichert sind. Sie können den Unterschied zwischen RAID -Wiederherstellung und Festplattenwiederherstellung aus diesem PHP.CN -Beitrag lernen.

Bekommen Sie beim Tippen auf Word -Text verschwinden? Einige Briefe oder sogar Absätze können aus Ihrem Dokument verschwinden. Was ist daran los? In diesem Beitrag von der PHP.CN -Website werden wir uns das Wort automatisch ansehen, das das Problem mit automatisch löschen

Wenn Sie versuchen, sich bei Overwatch 2 anzumelden, erhalten Sie möglicherweise die Fehlermeldung von LC-208 und verhindert, dass Ihr Spiel mit den Spielen-Servern eine Verbindung herstellt. In diesem Beitrag von Php.cn wird der LC-208-Overwatch-Fehler behoben.

Im Allgemeinen können Sie von Datei Explorer schnell auf Google Drive -Dateien zugreifen und bearbeiten. Manchmal begegnen Sie jedoch auf das Problem „Google Drive verschwunden aus dem Datei -Explorer“. Hier in diesem Beitrag auf Php.cn sagt Ihnen, wie Sie Google Drive zum Anzeigen bringen können

Warum ist mein Computer so lange auf dem Begrüßungsbildschirm? Wie repariere ich Windows 7 Welcome Screen Langsam? Wenn Sie immer noch Windows 7 auf Ihrem PC ausführen und dieses Problem erfüllen, sind Sie am richtigen Ort und mehrere Lösungen werden hier von Php.cn angegeben.

Möchten Sie das integrierte Tool für das integrierte Kennwortverwaltung verwenden-Anmeldeinformationsmanager, um Ihre Anmeldeinformationen für Web und Apps zu verwalten? Wie können Sie den Anmeldeinformationsmanager in Windows 11 öffnen? In diesem Beitrag sammelte Php.cn mehrere Möglichkeiten, um auf dieses Dienstprogramm zuzugreifen und zu lassen.

Der MicroSft Defender Antivirus verfügt über eine Funktion, die als periodisches Scanning bezeichnet wird. Dies kann aktiviert werden, wenn Sie ein anderes Antivirenprodukt auf einem Windows 11/10 -Gerät installiert haben. In diesem Beitrag von php.cn lehrt Sie, wie Sie das periodische Scannen auf WI aktivieren/deaktivieren können

Haben Sie jemals auf das Thema „Excel -Hyperlinks funktionieren“ gestoßen? Wissen Sie, wie man damit umgeht? In diesem Beitrag von Php.cn können Sie mehrere praktikable Lösungen erhalten, um dieses Problem zu beseitigen. Und Sie kennen ein professionelles Datenwiederherstellungstool t


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

EditPlus chinesische Crack-Version
Geringe Größe, Syntaxhervorhebung, unterstützt keine Code-Eingabeaufforderungsfunktion

WebStorm-Mac-Version
Nützliche JavaScript-Entwicklungstools

Sicherer Prüfungsbrowser
Safe Exam Browser ist eine sichere Browserumgebung für die sichere Teilnahme an Online-Prüfungen. Diese Software verwandelt jeden Computer in einen sicheren Arbeitsplatz. Es kontrolliert den Zugriff auf alle Dienstprogramme und verhindert, dass Schüler nicht autorisierte Ressourcen nutzen.

SublimeText3 Englische Version
Empfohlen: Win-Version, unterstützt Code-Eingabeaufforderungen!

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung