Heim Computer-Tutorials Computerwissen So implementieren Sie die Java-Binärsuche mithilfe eines rekursiven Algorithmus

So implementieren Sie die Java-Binärsuche mithilfe eines rekursiven Algorithmus

Jan 12, 2024 pm 08:06 PM

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;

}

}

}

So implementieren Sie die Java-Binärsuche mithilfe eines rekursiven Algorithmus

Die JAVA-Sprache für Expertenprogrammierung verwendet einen rekursiven Algorithmus und 1 2 3 4 100 oder 11 13 15

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;

}

}

Was sind die Algorithmen der Rekursion und Iteration in Java? Iteration ist eine normale Schleife.

Beispiel: Addiere von 1 bis 10

int sum=0

for(int i=0;i sum=sum+i;

}

Rekursion bedeutet, dass sich eine Funktion direkt oder indirekt selbst aufruft.

Zum Beispiel: Es waren einmal ein großer Mönch und ein kleiner Mönch in einem Tempel. Der große Mönch bat den kleinen Mönch, Geschichten zu erzählen In einem Tempel bat der kleine Mönch den großen Mönch, Geschichten zu erzählen. Der große Mönch erzählte weiter, dass es früher einen großen und einen kleinen Mönch in einem Tempel gab und sie jeden Tag gemeinsam Buddhismus praktizierten und studierten.

Eigenschaften der Rekursion:

Es müssen drei Bedingungen vorliegen:

1. Rufen Sie sich indirekt oder direkt an.

2. Stellen Sie beim Spielen sicher, dass Sie Bedingungen für das Verlassen festlegen. Der große Mönch wird beispielsweise aufhören, der Geschichte zuzuhören, wenn sein Mund trocken ist. Wenn keine Beendigungsbedingungen festgelegt sind, kann das Spiel in eine Endlosschleife geraten.

3. Es muss einen logischen Körper geben (was Sie tun möchten).

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.

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!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Wie repariere ich den Dampfwolkenfehler? Probieren Sie diese Methoden aus Wie repariere ich den Dampfwolkenfehler? Probieren Sie diese Methoden aus Apr 04, 2025 am 01:51 AM

Der Dampfwolkenfehler kann durch viele Gründe verursacht werden. Um ein Spiel reibungslos zu spielen, müssen Sie einige Maßnahmen ergreifen, um diesen Fehler zu entfernen, bevor Sie das Spiel starten. PHP.CN -Software führt in diesem Beitrag einige beste Möglichkeiten sowie nützlichere Informationen ein.

Windows -Metadaten- und Internetdiensteprobleme: Wie beheben Sie es? Windows -Metadaten- und Internetdiensteprobleme: Wie beheben Sie es? Apr 02, 2025 pm 03:57 PM

Möglicherweise sehen Sie, dass die „Verbindung zu den Windows Metadata und Internet Services (WMIS) nicht hergestellt werden konnte“. Fehler beim Ereigniszuschauer. In diesem Beitrag von PHP.CN wird das Problem der Windows -Metadaten und des Internet -Dienste entfernen.

So beheben Sie das KB5035942 -Update -Probleme - Absturzsystem So beheben Sie das KB5035942 -Update -Probleme - Absturzsystem Apr 02, 2025 pm 04:16 PM

KB5035942 Update -Probleme - Das Absturzsystem kommt häufig bei Benutzern vor. Die Menschen hoffen, einen Ausweg aus der Art von Schwierigkeiten herauszuholen, wie zum Beispiel eines Absturzsystems, Installation oder Klangprobleme. Targeting dieser Situationen, in diesem Beitrag, der von Php.cn Wil veröffentlicht wurde

Behoben - OneDrive laden keine Fotos auf dem PC hoch Behoben - OneDrive laden keine Fotos auf dem PC hoch Apr 02, 2025 pm 04:04 PM

OneDrive ist ein Online -Cloud -Speicherdienst von Microsoft. Manchmal finden Sie möglicherweise, dass OneDrive Fotos nicht in die Cloud hochladen. Wenn Sie auf demselben Boot sind, lesen Sie diesen Beitrag weiter von der Php.cn -Software, um jetzt effektive Lösungen zu erhalten!

So verwenden Sie Chris Titus Tool, um ein deBloated Win11/10 ISO zu erstellen So verwenden Sie Chris Titus Tool, um ein deBloated Win11/10 ISO zu erstellen Apr 01, 2025 am 03:15 AM

Chris Titus Tech verfügt über ein Tool namens Windows Utility, mit dem Sie problemlos ein deBloated Windows 11/10 ISO erstellen können, um ein sauberes System zu installieren. PHP.CN bietet eine vollständige Anleitung zum Durchführen dieses Dinges mit dem Chris Titus -Tool.

Entfernen Sie PC App Store Malware - eine vollständige Anleitung für Sie! Entfernen Sie PC App Store Malware - eine vollständige Anleitung für Sie! Apr 04, 2025 am 01:41 AM

Wenn Sie ein Programm namens PC App Store auf Ihrem Computer haben und es nicht absichtlich installiert haben, ist Ihr PC möglicherweise mit der Malware infiziert. In diesem Beitrag von PHP.CN wird das Entfernen von PC App Store -Malware vorgestellt.

Fix: Brüder: Eine Geschichte von zwei Söhnen Remake nicht starten/laden Fix: Brüder: Eine Geschichte von zwei Söhnen Remake nicht starten/laden Apr 02, 2025 am 02:40 AM

Sind Brüder: Eine Geschichte von zwei Söhnen, die nicht gestartet werden? Begegnung mit Brüdern: Eine Geschichte zweier Söhne, die schwarze Bildschirm remake? Hier bietet dieser Beitrag auf PHP.CN Ihnen getestete Lösungen, mit denen Sie dieses Problem beheben können.

MSConfig kehrt immer wieder zum selektiven Startup zurück? 2 Lösungen hier MSConfig kehrt immer wieder zum selektiven Startup zurück? 2 Lösungen hier Mar 28, 2025 pm 12:06 PM

Sind Sie zu einem Problem befragt, das MSConfig immer wieder zum selektiven Start in Ihren Fenstern zurückkehrt? Wie wechsle ich zum normalen Start, wenn Sie es benötigen? Probieren Sie die in diesem Php.cn -Post erläuterten Methoden aus, um einen zu finden, der für Sie funktioniert.

See all articles