Java verwendet die Funktion „binarySearch()“ der Collections-Klasse, um eine binäre Suche in einer geordneten Sammlung durchzuführen.
Die binäre Suche ist ein effizienter Algorithmus zum Auffinden bestimmter Elemente in einer geordneten Sammlung. In Java können wir die Funktion „binarySearch()“ der Klasse „Collections“ verwenden, um die binäre Suche zu implementieren. In diesem Artikel wird erläutert, wie Sie mit der Funktion „binarySearch()“ in einer geordneten Sammlung suchen, und es werden spezifische Codebeispiele bereitgestellt.
Die Grundidee des binären Suchalgorithmus besteht darin, das zu findende Element mit dem mittleren Element der geordneten Menge zu vergleichen. Wenn das mittlere Element dem zu findenden Element entspricht, ist die Suche erfolgreich Element ist größer als das zu findende Element, es befindet sich in der linken Hälfte der Menge. Suchen Sie teilweise weiter. Wenn das mittlere Element kleiner als das zu findende Element ist, suchen Sie in der rechten Hälfte der Menge weiter. Durch kontinuierliches Einschränken des Suchbereichs kann das Zielelement schließlich gefunden oder festgestellt werden, dass es nicht in der Sammlung vorhanden ist.
In Java können wir die Funktion „binarySearch()“ der Collections-Klasse verwenden, um die binäre Suche zu implementieren. Die Definition dieser Funktion lautet wie folgt:
public static int BinarySearch(List erweitert Comparable super T>> Liste, T-Taste)
Diese Funktion akzeptiert eine geordnete Sammlung, die die Comparable-Schnittstelle und das Element implementiert werden als Parameter gefunden und geben den Indexwert des Elements in der Sammlung zurück. Wenn das Element nicht in der Sammlung vorhanden ist, wird eine negative Zahl zurückgegeben, die dem negativen Wert der Position entspricht, an der das Element eingefügt werden soll, minus eins (d. h. - (Einfügeposition + 1)).
Das Folgende ist ein Codebeispiel für die binäre Suche mit der Funktion „binarySearch()“ der Collections-Klasse:
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
public class BinarySearchExample {
public static void main(String[] args) { List<Integer> list = new ArrayList<>(); list.add(1); list.add(3); list.add(5); list.add(7); list.add(9); int index = Collections.binarySearch(list, 5); if (index >= 0) { System.out.println("Element found at index " + index); } else { System.out.println("Element not found. Insertion point: " + (-(index + 1))); } }
}
Im obigen Code erstellen wir eine ArrayList von Ganzzahlen, die einige geordnete Ganzzahlen enthält. Wir haben die Funktion „binarySearch()“ der Klasse „Collections“ aufgerufen, um den Indexwert von Element 5 in der Sammlung zu finden. Da das Element in der Sammlung vorhanden ist, wird der Indexwert des Elements zurückgegeben. Schließlich werden wir „Element gefunden bei Index 2“ ausgeben.
Wenn wir in der Menge nach einem Element suchen, das nicht existiert, beispielsweise 4, erhalten wir eine negative Zahl, die die Position angibt, an der das Element eingefügt werden soll. Da im obigen Code 4 an Index 1 eingefügt werden soll, lautet die zurückgegebene negative Zahl -(1+1)=-2. Nach der Ausführung des Codes sehen wir die Ausgabe „Element nicht gefunden. Einfügepunkt: -2“.
Mit der Funktion „binarySearch()“ der Klasse „Collections“ können wir ganz einfach eine binäre Suche in einer geordneten Sammlung durchführen. Die zeitliche Komplexität dieses Algorithmus beträgt O(logN), sodass die binäre Suche eine hohe Effizienz und Vorteile bei der Verarbeitung großer Datenmengen bietet.
Zusammenfassung:
In diesem Artikel wird die Methode zur Verwendung der Funktion „binarySearch()“ der Klasse „Collections“ vorgestellt, um eine binäre Suche in einer geordneten Sammlung in Java durchzuführen. Mithilfe dieser Funktion können wir schnell die Position eines bestimmten Elements in der Sammlung ermitteln. Ich hoffe, dass die Leser durch die Einführung und die Codebeispiele dieses Artikels die Anwendung und Verwendung des binären Suchalgorithmus beherrschen und ihre Effizienz und Programmierkenntnisse verbessern können.
Das obige ist der detaillierte Inhalt vonJava verwendet die Funktion „binarySearch()' der Klasse „Collections', um eine binäre Suche in einer geordneten Sammlung durchzuführen.. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!