简单实现升序的插入排序:
原理很简单,每次从未排序的序列顶部取出一个元素和排好序的尾部比较,知道大于或等于排好序中时停止。重复上面步骤。
以下是实现A=(5, 2, 4, 6, 1, 3)示意图:
代码实现:
import time
A = list(range(0, 100000))
start = time.clock()
for j in range(1, 100000):
key = A[j]
i = j - 1
while i > 0 & A[i] > key:
A[i+1] = A[i]
i = i - 1
A[i+1] = key
time_end = time.clock() - start
print(time_end)