Heim >Java >javaLernprogramm >Java verwendet die Funktion „binarySearch()' der Klasse „Arrays', um die binäre Suche zu implementieren
Java verwendet die Funktion „binarySearch()“ der Klasse „Arrays“, um die binäre Suche zu implementieren.
Die binäre Suche ist ein effizienter Suchalgorithmus, der die Position des Zielelements in einem geordneten Array schnell lokalisieren kann. In Java können wir die Funktion „binarySearch()“ der Klasse „Arrays“ verwenden, um die binäre Suche zu implementieren.
Die Arrays-Klasse ist eine in Java bereitgestellte Toolklasse zum Bearbeiten von Arrays. Sie enthält verschiedene Methoden zum Bearbeiten von Arrays, einschließlich der binären Suche. Schauen wir uns an, wie Sie die Funktion „binarySearch()“ verwenden, um die binäre Suche zu implementieren.
Zuerst müssen wir ein geordnetes Array erstellen. Dieses Array kann ein Basistyp-Array oder ein Referenztyp-Array sein. Hier nehmen wir ein ganzzahliges Array als Beispiel:
int[] arr = {1, 3, 5, 7, 9, 11, 13};
Als nächstes rufen wir die Funktion „binarySearch()“ der Klasse „Arrays“ auf eine binäre Suche. Diese Funktion muss zwei Parameter übergeben: das zu durchsuchende Array und das zu durchsuchende Zielelement. Diese Funktion gibt die Indexposition des Zielelements im Array oder eine negative Zahl zurück, wenn das Zielelement nicht gefunden werden kann. Wir können feststellen, ob sich das Zielelement im Array befindet, indem wir den positiven oder negativen Wert des Rückgabewerts beurteilen.
int target = 9;
int index = Arrays.binarySearch(arr, target);
Wenn das Zielelement im Array vorhanden ist, ist Index die Indexposition des Zielelements im Array; wenn das Zielelement nicht vorhanden ist Sind im Array vorhanden, ist Index die Position, an der das Zielelement eingefügt werden soll, minus eins.
Als nächstes können wir die entsprechende Verarbeitung basierend auf dem zurückgegebenen Index durchführen. Das Folgende ist ein vollständiger Beispielcode:
import java.util.Arrays;
public class BinarySearchExample {
public static void main(String[] args) { int[] arr = {1, 3, 5, 7, 9, 11, 13}; int target = 9; int index = Arrays.binarySearch(arr, target); if (index >= 0) { System.out.println("目标元素在数组中的位置是:" + index); } else { System.out.println("目标元素不存在于数组中,它应该插入的位置是:" + (-index-1)); } }
}
Führen Sie den obigen Code aus. Das Ausgabeergebnis lautet „Die Position des Zielelements im Array ist: 4", was bedeutet, dass die Indexposition des Zielelements 9 im Array 4 ist.
Die binäre Suche ist ein effizienter Suchalgorithmus mit einer Zeitkomplexität von O(logN), der viel schneller ist als eine einfache lineare Suche. Beim Durchsuchen umfangreicher geordneter Arrays kann die Verwendung der Funktion „binarySearch()“ der Klasse „Arrays“ eine effizientere Leistung bieten.
Es ist jedoch zu beachten, dass die Voraussetzung für die Verwendung der Funktion „binarySearch()“ zur Durchführung einer binären Suche darin besteht, dass das Array geordnet sein muss. Wenn das Array ungeordnet ist, müssen wir es zuerst sortieren und dann eine binäre Suche durchführen.
Zusammenfassend stellt dieser Artikel die Methode zur Verwendung der Funktion „binarySearch()“ der Klasse „Arrays“ zur Implementierung der binären Suche in Java vor und stellt einen Beispielcode bereit. Indem wir die Prinzipien und die Verwendung der binären Suche beherrschen, können wir das Zielelement in einem geordneten Array effizienter finden.
Das obige ist der detaillierte Inhalt vonJava verwendet die Funktion „binarySearch()' der Klasse „Arrays', um die binäre Suche zu implementieren. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!