자료구조 & 알고리즘

[파이썬] 이진 탐색(Binary Search) 구현하기

codewalker 2021. 3. 21. 23:48
  • 탐색할 자료를 둘로 나누어 해당 데이터가 있을만한 곳을 탐색하는 방법
  • 탐색할 자료는 반드시 정렬이 되어있어야 함
  • 탐색할 자료의 중간 값과 찾을 데이터를 비교해서 찾을 데이터가 더 크면, 자료의 첫번째 값에서 중간 값까지 값 중에서 다시 탐색함
  • 시간 복잡도는 O(𝑙𝑜𝑔𝑛)

 

이진 탐색과 순차 탐색의 비교

 

< 이진 탐색 구현하기 >

찾을 값(search)이 data 안에 있으면 True, 없으면 False 반환