bisect.bisect_left(a, x, lo=0, hi=len(a), *, key=None)
문서 내 설명: 정렬된 순서를 유지하도록 시퀀스 변수 a에 x를 삽입할 위치를 찾습니다. 매개 변수 lo 와 hi는 고려해야 할 리스트의 부분집합을 지정하는 데 사용될 수 있습니다; 기본적으로 전체 리스트가 사용됩니다. x가 a에 이미 있으면, 삽입 위치는 기존 항목 앞(왼쪽)이 됩니다. 반환 값은 a가 이미 정렬되었다고 가정할 때 list.insert()의 첫 번째 매개 변수로 사용하기에 적합합니다.
요약
a에 x가 존재할 때, x의 가장 처음인덱스를 반환한다.
a에 x가 존재하지 않을 때는 a에 x를 삽입했을 때 그 인덱스를 반환한다.
bisect.bisect_right(a, x, lo=0, hi=len(a), *, key=None)
a에 x가 존재할 때, x의 가장 마지막 인덱스 + 1을 반환한다.
a에 x가 존재하지 않을 때는 a에 x를 삽입했을 때 그 인덱스를 반환한다.
예시
from bisect import bisect_right, bisect_left
lst= [1, 2, 3, 3, 5, 9, 10, 11, 18, 22, 25, 32, 76]
print(lst)
print(bisect_left(lst,6)) #5
print(bisect_right(lst,21)) #9
from bisect import bisect_right, bisect_left
lst= [1, 2, 3, 3, 5, 9, 10, 11, 18, 22, 25, 32, 76]
print(lst)
print(bisect_left(lst,3)) #2
print(bisect_right(lst,3)) #4
from bisect import bisect_right, bisect_left
lst= [1, 2, 3, 3, 5, 9, 10, 11, 18, 22, 25, 32, 76]
print(lst)
print(bisect_left(lst,4)) #4
print(bisect_right(lst,4)) #4
'Language > Python' 카테고리의 다른 글
| Python 비트 마스크(Bit Mask) (0) | 2022.09.26 |
|---|---|
| [Python] inconsistent use of tabs and spaces in indentation 에러 (0) | 2022.09.21 |
| [python] 파이썬 리스트의 슬라이싱 (0) | 2022.09.05 |
| [Python]파이썬 자료형별 시간복잡도 정리 (0) | 2022.09.03 |
| Python mutable객체와 immutable객체 (0) | 2022.07.23 |