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 특성 라이선스에 설명된 용어에 따라 사용되는 작업을 기반으로 하는 수정 사항입니다.