[Time Complexity] Python - Numpy vs List of zeros declaration
[시간 복잡도] 파이썬 - Numpy vs List의 제로 배열 선언 비교
code | n = 10000000 | n = 100000000 | n = 1000000000 | Time Complexity |
[0] * n | 0.0831630230 | 0.8130910397 | 8.0924339294 | O(n) |
[0 for i in xrange(n)] | 0.3735442162 | 3.7914631367 | 37.1647899151 | O(n) |
x = [] for i in xrange(n): x.append(0) |
0.9481530190 | 9.4668169022 | 94.6755440235 | O(n) |
numpy.zeros((n,)) | 0.0000300407 | 0.0000290871 | 0.0000340939 | O(1) |
numpy.full((n,),0) | 0.0420970917 | 0.4114339352 | 4.0288629532 | O(n) |
numpy to list | 0.5932991505 | 5.9227490425 | 59.9193470478 | O(n) |
결론
1. 제로 리스트 선언은 numpy.zeros가 가장 빠름
2. 다만 numpy to list 시간 복잡도가 O(n)이므로 리스트로 변환이 필요시에 [0] * n 가 가장 빠름
'Programming > Python' 카테고리의 다른 글
[Time Complexity] Python - Find Value in List vs Set vs Dict (1) | 2019.04.23 |
---|---|
[Time Complexity] Python - Deque vs List performance comparison (append, appendleft, pop, popleft) (2) | 2019.04.17 |
자주 쓰이는 정규식(Regular Expression) (0) | 2019.01.15 |
python 버전 업그레이드에 의한 yum 재설치 (2) | 2018.10.29 |
pip 설치 및 재설치 (0) | 2018.10.22 |