자료의 가운데에 있는 항목의 키 값과 비교하여 다음 검색의 위치를 결정하고 검색을 계속 진행하는 방법
이진 검색을 하기 위해서는 자료가 정렬된 상태여야 한다.
검색 과정
구현
def binarySearch(a, N, key):
start = 0
end = N - 1
while start <= end:
middle = (start + end) // 2
if a[middle] == key: # 검색 성공
return True
elif a[middle] > key:
end = middle - 1
else:
start = middle + 1
return False # 검색 실패