728x90
반응형
list의 index값을 찾는 방법
index를 찾는 list의 크기가 크거나 loop로 찾는다면bisect()
이진분할 알고리즘
을 사용하면 시간을 단축할 수 있다
list.index(n) # list index함수
bisect(list, n) # 이진분할 알고리즘
rmax = 2000000
l = [i for i in range(rmax)]
loop = 50
find_n = rmax-2
@print_time
def m_index():
for i in range(loop):
l.index(find_n)
import bisect
@print_time
def m_bisect():
for i in range(loop):
idx = bisect.bisect_left(l, find_n)
m_index()
m_bisect()
m_index: 8.1919
m_bisect: 0.0001
728x90
728x90
BIG
'Programming > Python' 카테고리의 다른 글
Reverse list - 리스트 역순으로 (0) | 2020.09.16 |
---|---|
list method 성능 측정 (0) | 2020.09.15 |
named tuple - 네임드듀플 (0) | 2020.09.11 |
permutations in itertools (0) | 2020.09.04 |
list[::], tuple[::] - extended slices (0) | 2020.09.02 |
댓글