数组的插入排序
#s0,s1,s2,...si-1,si,si+1,... def sort(s): n=len(s) for i in range(1,n): t=s[i] j=i-1 while(j>=0): #for j in range(i-1,-1,-1): if(t>s[j]): break j=j-1 for k in range(i-1,j,-1): s[k+1]=s[k] s[j+1]=t s=[1,4,2] print(s) sort(s) print(s)
数组的冒泡排序#s0,s1,s2,...si-1,si,si+1,... def sort(s): n=len(s) for i in range(1,n): for j in range(0,n-i): if(s[j]>s[j+1]): t=s[j] s[j]=s[j+1] s[j+1]=t s=[4,2,3,8,7] print(s) sort(s) print(s)
数组的递归思想排序
#s0,s1,s2,...si-1,si,si+1,... def sort(s,n): if(n==1): return sort(s,n-1) if(s[n-2]>s[n-1]): t=s[n-2] s[n-2]=s[n-1] s[n-1]=t sort(s,n-1) s=[9,2,7,3,8] print(s) sort(s,5) print(s)