Q. 리스트에 들어있는 정렬된 데이터를 검색하고 싶을 땐?
import bisect
sequence = [1,3,4,5]
print(bisect.bisect(sequence,2))
import bisect
sequence = [1, 3, 4, 5]
print(bisect.bisect_right(sequence, 3))
print(bisect.bisect_left(sequence, 3))
3이 들어갈 위치 뒷 값은 4 위치 -> [2]
동일한 값이 있으므로 3의 위치 -> [1]
정렬된 배열 [0,1,2,3,4,5,6,7,8,9] 있을 때, 현재 정렬된 상태를 유지하면서 n=5 이라는 요소를 배열에 추가하자.
이분 탐색을 사용하지 않고 구현
이분탐색 사용해서 구현
bisect 대량 리스트 검색 시 속도 빠름
요약
1. 리스트에 들어 있는 정렬된 데이터를 검색할 때 bisect 내장 모듈의 bisect_left 함수를 사용하자! 시간이 빠르다.