defmaopao(arr):for i inrange(len(arr)):if i<len(arr)-1:if arr[i]>arr[i+1]:
centent=arr[i]
arr[i]=arr[i+1]
arr[i+1]=centent
maopao(arr)return arr
defmaopao1(arr):for i inrange(len(arr)-1):for j inrange(i+1,len(arr)):if arr[i]>arr[j]:
arr[i],arr[j]=arr[j],arr[i]return arr
选择排序
defxuanze(arr):for i inrange(0,len(arr)-1):min=i
for j inrange(i+1,len(arr)):if arr[j]<arr[min]:min=j
arr[min],arr[i]=arr[i],arr[min]return arr
插入排序
defcharu(arr):for i inrange(len(arr)):for j inrange(i,0,-1):if arr[j]<arr[j-1]:
arr[j],arr[j-1]=arr[j-1],arr[j]return arr
defcharu1(arr):for i inrange(1,len(arr)):
pre=i-1
con=arr[i]while pre>=0and con<arr[pre]:
arr[pre+1]=arr[pre]
pre-=1
arr[pre+1]=con
return arr
希尔排序
defxier(arr):
leng=len(arr)
val=leng//2while val>0:for i inrange(val,len(arr)):
pre = i -1
con = arr[i]while pre >=0and con < arr[pre]:
arr[pre+1]= arr[pre]
pre -=1
arr[pre+1]= con
val=val//2return arr
deftong(arr):
big=max(arr)
con=[0]*(big+1)for i in arr:
con[i]+=1
arr1=[]for index inrange(len(con)):if con[index]!=0:for j inrange(con[index]):
arr1.append(index)return arr1