1. Python列表类型不同操作的时间效率
from timeit import Timer
def test1():
li = []
for i in range(10000):
li.append(i)
def test2():
li = []
for i in range(10000):
li += [i]
def test3():
li = [i for i in range(10000)]
def test4():
li = list(range(10000))
timeit = Timer("test1()", "from __main__ import test1")
print(timeit.timeit(1000))
timeit = Timer("test2()", "from __main__ import test2")
print(timeit.timeit(1000))
timeit = Timer("test3()", "from __main__ import test3")
print(timeit.timeit(1000))
timeit = Timer("test4()", "from __main__ import test4")
print(timeit.timeit(1000))
2. 所消耗的时间复杂度从小到大
O(1) < O(logn) < O(n) < O(nlogn) < O(n2) < O(n3) < O(2^n) < O(n!) < O(n^n)