# 插入排序 时间复杂度:O(n**2) 代码:
# 插入排序def insert_sort(li): for i in range(len(li)): # 摸到的牌的下标 tmp = li[i] # 记录摸到的牌 j = i - 1 # 手里的牌的下标 while j >= 0 and tmp < li[j]: li[j + 1] = li[j] j -= 1 li[j + 1] = tmp print(li)
思路:
while j >= 0 and tmp < li[j]: li[j + 1] = li[j] j -= 1 在找摸到的牌要插入的位置,每当摸到的牌比手里的牌小,就会找到摸到的牌要插入的位置,找到后将摸到的牌插入比摸到牌小的牌的前一个位置(j+1)