[JAVA] Dichotomisierte Suchmethode für die binäre Suche

Dichotomisierte Suchmethode für die binäre Suche

Suchmethode zum Suchen, während der Bereich halbiert wird

verdienen

Die Suchgeschwindigkeit ist schnell

Fehler

Daten müssen vorab ausgerichtet werden

BinarySerch.java



class BinarySerch{
  public static void main(String[] args){
   //Sortiertes Array zur Suche
   int a[] = {1,3,6,8,10};
   //Wert zu suchen
   int serchValue = 3;
   //Der Anfangswert der Sequenznummer der gefundenen Daten ist ein Fehlerwert (-1)
   int find = -1;

   //Zahlen ganz links und ganz rechts zu suchen
   int left = 0;
   int right = a.length-1;
   //Wiederholen Sie diesen Vorgang, wenn am linken und rechten Rand Daten zur Überprüfung vorhanden sind
   while(left <= right){
     //Geben Sie die Position an, an der die Nummer in der Mitte links und rechts überprüft werden soll
     int middle = (int)((left + right)/2);
     //Vergleichen Sie den Wert der zu suchenden Position mit der zu suchenden Position
     if(a[middle] == serchValue){
        //Wenn sie identisch sind, speichern Sie die Nummer und beenden Sie die Iteration
        find = middle;
        break;
    }else if (a[middle] < serchValue){
    //Wenn es kleiner als der gesuchte Wert ist, verschieben Sie den linken Rand
     left = middle + 1;
    }else {
    //Wenn es größer als der gesuchte Wert ist, verschieben Sie die rechte Kante
    right = middle - 1;
    }
  }
  //Suchergebnisse anzeigen
  System.out.println("Suchergebnisse:" + find);
 }
}

Nachschlagewerk [Angenehmer Lernalgorithmus und Programmierbilderbuch](https://www.amazon.co.jp/%E6%A5%BD%E3%81%97%E3%81%8F%E5%AD%A6%E3%81] % B6-% E3% 82% A2% E3% 83% AB% E3% 82% B4% E3% 83% AA% E3% 82% BA% E3% 83% A0% E3% 81% A8% E3% 83% 97% E3% 83% AD% E3% 82% B0% E3% 83% A9% E3% 83% 9F% E3% 83% B3% E3% 82% B0% E3% 81% AE% E5% 9B% B3% E9% 91% 91-% E6% A3% AE-% E5% B7% A7% E5% B0% 9A-ebook / dp / B01N56TW48)

Recommended Posts

Dichotomisierte Suchmethode für die binäre Suche
Bisektionssuchmethode
Suchmethode
Beliebige Suchmethode in einem Array mit binärer Suche
to_i Methode
Java (Methode)
Methode getRequestDispatcher ()
Zusammenführungsmethode
Eine Geschichte über das Schreiben einer Dichotomiemethode in einer internen Lernsitzung
Kartenmethode
Ich habe versucht, AOJs binäre Suche zu lösen
Methode einschließen
Abstrakte Methode
Methode initialisieren
Listenmethode
setzt Methode
Lineare Suche
Java-Methode
Klassenmethode
Save! -Methode
getParameter-Methode
[Java] -Methode
[Rails] Zusammenfassung der Methoden zur Konvertierung / Überprüfung / Suche
private Methode
Schienenmethode
Bifurcated Tree Memorandum für Anfänger (Teil 5 Bifurcated Search Tree)
[Java] -Methode
Einführung in Algorithmen mit Java-Suche (Vollsuche, Halbierungssuche)
Implementieren Sie den Algorithmus in Ruby: Tag 3-Dichotomie-
Memorandum über gegabelte Bäume für Anfänger (Teil 2 Suche nach gegabelten Bäumen)