Collections.BinarySearch 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
多載
BinarySearch(IList, Object) |
使用二進位搜尋演算法搜尋指定的物件清單。 |
BinarySearch(IList, Object, IComparator) |
使用二進位搜尋演算法搜尋指定的物件清單。 |
BinarySearch(IList, Object)
使用二進位搜尋演算法搜尋指定的物件清單。
[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
參數
- list
- IList
要搜尋的清單。
- key
- Object
要搜尋的索引鍵。
傳回
如果搜尋索引鍵包含在清單中,則為 ;否則為 (-(<i>insertion point</i>) - 1)
。 插入 點 定義為索引鍵要插入清單的點:大於索引鍵的第一個專案的索引,或 list.size()
清單中所有元素都小於指定的索引鍵。 請注意,這可確保只有在找到索引鍵時,傳回值才會是 >= 0。
- 屬性
備註
使用二進位搜尋演算法搜尋指定的物件清單。 在進行此呼叫之前,清單必須根據其元素的可比較自然順序(如 #sort(List)
方法)排序為遞增順序。 如果未排序,則結果為未定義。 如果清單包含多個專案等於指定的物件,則不保證會找到哪一個元素。
這個方法會在log(n) 時間中執行「隨機存取」清單(提供近乎常數時間的位置存取)。 如果指定的清單未實 RandomAccess
作 介面且很大,這個方法會執行以反覆運算器為基礎的二進位搜尋,以執行 O(n) 連結周遊和 O(log n) 元素比較。
此頁面的部分是根據 Android 開放原始碼專案所建立和共用的工作進行修改,並根據 Creative Commons 2.5 屬性授權中所述的詞彙使用。
適用於
BinarySearch(IList, Object, IComparator)
使用二進位搜尋演算法搜尋指定的物件清單。
[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
參數
- list
- IList
要搜尋的清單。
- key
- Object
要搜尋的索引鍵。
排序列表的比較子。
值 null
表示應該使用元素的可比較自然順序。
傳回
如果搜尋索引鍵包含在清單中,則為 ;否則為 (-(<i>insertion point</i>) - 1)
。 插入 點 定義為索引鍵要插入清單的點:大於索引鍵的第一個專案的索引,或 list.size()
清單中所有元素都小於指定的索引鍵。 請注意,這可確保只有在找到索引鍵時,傳回值才會是 >= 0。
- 屬性
備註
使用二進位搜尋演算法搜尋指定的物件清單。 在進行這個呼叫之前,清單必須根據指定的比較子(如 #sort(List, Comparator) sort(List, Comparator)
方法所示)排序為遞增順序。 如果未排序,則結果為未定義。 如果清單包含多個專案等於指定的物件,則不保證會找到哪一個元素。
這個方法會在log(n) 時間中執行「隨機存取」清單(提供近乎常數時間的位置存取)。 如果指定的清單未實 RandomAccess
作 介面且很大,這個方法會執行以反覆運算器為基礎的二進位搜尋,以執行 O(n) 連結周遊和 O(log n) 元素比較。
此頁面的部分是根據 Android 開放原始碼專案所建立和共用的工作進行修改,並根據 Creative Commons 2.5 屬性授權中所述的詞彙使用。