def bs(alist):
l = len(alist)
for i in range(l): #第i轮
flag = 1;
for j in range(l - i - 1): #第l-i-1最大 最后的最大
if alist[j] > alist[j + 1]:
flag = 0;
alist[j],alist[j + 1] = alist[j + 1],alist[j]
if flag:
break;
return alist;
print("bs",bs(list1))
插入排序
每次插入一个未排序元素到已排序元素的正确位置,排好序的元素越来越多
扑克牌原理
def insertS(alist):
l = len(alist);
for i in range(1,l):
key = alist[i];
pos = i - 1;
while(pos >= 0 and alist[pos] > key):
alist[pos + 1] = alist[pos];
pos -= 1
ali