插入排序:
5 4 3 2
1:1位置开始比较,和他前面所有的数字进行比较
4 5 3 2
2:2位置开始比较,和他前面所有的数字进行比较
4 3 5 2
3 4 5 2
3:3位置开始比较,和他前面所有的数字进行比较
3 4 5 2
3 4 2 5
3 2 4 5
2 3 4 5
排好序了。
依次把1坐标以后的所有元素,分别与它前面的元素进行比较
如果发生了小于的情况就插入。
原理:每次有一个数,它的前面都是排好序的,然后它要插入到
排好的序列中,插入排序
def insert(nums): #从index=1开始比较相邻的两个元素 for i in range(1,len(nums)): #所有i坐标的元素都跟index=i前面的元素相比较,小于则交换元素 for j in range(i,0,-1): if nums[j-1] < nums[j]: nums[j],nums[j-1] = nums[j-1],nums[j] return nums print(insert([4,2,5,1]))