def insert_sort(data_list):
length = len(data_list)
for i in range(1,length):
# 选择当前值 判断前面是否有比当前值大的元素 存在则往后移位
temp = data_list[i]
j = i - 1
while j>=0 and data_list[j] > temp:
data_list[j+1] = data_list[j]
j = j-1
data_list[j+1] = temp
- 从左到右(从第二个元素开始)选择,记录到temp种
- 判断前面的元素是否存在比当前元素小(从小到大)的元素,存在的话前面的元素往后移动,找到不大于当前元素的位置并记录下来
- 将temp放到第二点保存的index的位置
- 选择的元素的左边永远都是排好序的序列