排序之插入排序

# 插入排序
时间复杂度: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)
人生就是要不断折腾
原文地址:https://www.cnblogs.com/xiangxiaolin/p/11427148.html