def bubble_sort(ary):
if len(ary) <= 1: return ary
for i in range(len(ary) - 1):
for j in range(len(ary) - 2 - i):
if ary[j] > ary[j + 1]:
ary[j], ary[j + 1] = ary[j + 1], ary[j]
return ary
插入排序
從第一個元素開始派殷,該元素可以認(rèn)為已經(jīng)被排序
取出下一個元素,在已經(jīng)排序的元素序列中從后向前掃描
如果該元素(已排序)大于新元素墓阀,將該元素移到下一位置
重復(fù)步驟3毡惜,直到找到已排序的元素小于或者等于新元素的位置
將新元素插入到該位置后
重復(fù)步驟2~5
def insert_sort(ary):
if len(ary)<=1:return ary
for a in range(1,len(ary)):
for b in range(a,0,-1):
if ary[b-1]>ary[b]:
ary[b-1],ary[b]=ary[b],ary[b-1]
return ary
def select_sort(ary):
if len(ary)<=1:return ary
for i in range(len(ary)):
for j in range(i,len(ary)):
if ary[i]>ary[j]:
ary[i],ary[j]=ary[j],ary[i]
return ary