Bagikan melalui


Collections.BinarySearch Metode

Definisi

Overload

BinarySearch(IList, Object)

Mencari daftar yang ditentukan untuk objek yang ditentukan menggunakan algoritma pencarian biner.

BinarySearch(IList, Object, IComparator)

Mencari daftar yang ditentukan untuk objek yang ditentukan menggunakan algoritma pencarian biner.

BinarySearch(IList, Object)

Mencari daftar yang ditentukan untuk objek yang ditentukan menggunakan algoritma pencarian biner.

[Android.Runtime.Register("binarySearch", "(Ljava/util/List;Ljava/lang/Object;)I", "")]
[Java.Interop.JavaTypeParameters(new System.String[] { "T" })]
public static int BinarySearch(System.Collections.IList list, Java.Lang.Object key);
[<Android.Runtime.Register("binarySearch", "(Ljava/util/List;Ljava/lang/Object;)I", "")>]
[<Java.Interop.JavaTypeParameters(new System.String[] { "T" })>]
static member BinarySearch : System.Collections.IList * Java.Lang.Object -> int

Parameter

list
IList

daftar yang akan dicari.

key
Object

kunci yang akan dicari.

Mengembalikan

indeks kunci pencarian, jika terkandung dalam daftar; jika tidak, (-(<i>insertion point</i>) - 1). Titik penyisipan didefinisikan sebagai titik di mana kunci akan dimasukkan ke dalam daftar: indeks elemen pertama lebih besar dari kunci, atau list.size() jika semua elemen dalam daftar kurang dari kunci yang ditentukan. Perhatikan bahwa ini menjamin bahwa nilai yang dikembalikan akan menjadi >= 0 jika dan hanya jika kunci ditemukan.

Atribut

Keterangan

Mencari daftar yang ditentukan untuk objek yang ditentukan menggunakan algoritma pencarian biner. Daftar harus diurutkan ke dalam urutan naik sesuai dengan urutan alami yang sebanding dari elemennya (seperti metode #sort(List) ) sebelum melakukan panggilan ini. Jika tidak diurutkan, hasilnya tidak ditentukan. Jika daftar berisi beberapa elemen yang sama dengan objek yang ditentukan, tidak ada jaminan mana yang akan ditemukan.

Metode ini berjalan dalam waktu log(n) untuk daftar "akses acak" (yang menyediakan akses posisi mendekati waktu konstan). Jika daftar yang ditentukan tidak mengimplementasikan RandomAccess antarmuka dan besar, metode ini akan melakukan pencarian biner berbasis iterator yang melakukan traversal tautan O(n) dan perbandingan elemen O(log n).

Dokumentasi Java untuk java.util.Collections.binarySearch(java.util.List<? extends java.lang.Comparable<? super T>>, T).

Bagian halaman ini adalah modifikasi berdasarkan pekerjaan yang dibuat dan dibagikan oleh Proyek Sumber Terbuka Android dan digunakan sesuai dengan istilah yang dijelaskan dalam Lisensi Atribusi Creative Commons 2.5.

Berlaku untuk

BinarySearch(IList, Object, IComparator)

Mencari daftar yang ditentukan untuk objek yang ditentukan menggunakan algoritma pencarian biner.

[Android.Runtime.Register("binarySearch", "(Ljava/util/List;Ljava/lang/Object;Ljava/util/Comparator;)I", "")]
[Java.Interop.JavaTypeParameters(new System.String[] { "T" })]
public static int BinarySearch(System.Collections.IList list, Java.Lang.Object? key, Java.Util.IComparator? c);
[<Android.Runtime.Register("binarySearch", "(Ljava/util/List;Ljava/lang/Object;Ljava/util/Comparator;)I", "")>]
[<Java.Interop.JavaTypeParameters(new System.String[] { "T" })>]
static member BinarySearch : System.Collections.IList * Java.Lang.Object * Java.Util.IComparator -> int

Parameter

list
IList

daftar yang akan dicari.

key
Object

kunci yang akan dicari.

c
IComparator

komparator tempat daftar diurutkan. Nilai null menunjukkan bahwa pengurutan alami yang Sebanding elemen harus digunakan.

Mengembalikan

indeks kunci pencarian, jika terkandung dalam daftar; jika tidak, (-(<i>insertion point</i>) - 1). Titik penyisipan didefinisikan sebagai titik di mana kunci akan dimasukkan ke dalam daftar: indeks elemen pertama lebih besar dari kunci, atau list.size() jika semua elemen dalam daftar kurang dari kunci yang ditentukan. Perhatikan bahwa ini menjamin bahwa nilai yang dikembalikan akan menjadi >= 0 jika dan hanya jika kunci ditemukan.

Atribut

Keterangan

Mencari daftar yang ditentukan untuk objek yang ditentukan menggunakan algoritma pencarian biner. Daftar harus diurutkan ke dalam urutan naik sesuai dengan komparator yang ditentukan (seperti metode #sort(List, Comparator) sort(List, Comparator) ), sebelum melakukan panggilan ini. Jika tidak diurutkan, hasilnya tidak ditentukan. Jika daftar berisi beberapa elemen yang sama dengan objek yang ditentukan, tidak ada jaminan mana yang akan ditemukan.

Metode ini berjalan dalam waktu log(n) untuk daftar "akses acak" (yang menyediakan akses posisi mendekati waktu konstan). Jika daftar yang ditentukan tidak mengimplementasikan RandomAccess antarmuka dan besar, metode ini akan melakukan pencarian biner berbasis iterator yang melakukan traversal tautan O(n) dan perbandingan elemen O(log n).

Dokumentasi Java untuk java.util.Collections.binarySearch(java.util.List<? extends T>, T, java.util.Comparator<? super T>).

Bagian halaman ini adalah modifikasi berdasarkan pekerjaan yang dibuat dan dibagikan oleh Proyek Sumber Terbuka Android dan digunakan sesuai dengan istilah yang dijelaskan dalam Lisensi Atribusi Creative Commons 2.5.

Berlaku untuk