1. 程式人生 > >資料結構與演算法-排序

資料結構與演算法-排序

氣泡排序

插入排序

選擇排序

堆排序

快速排序

歸併排序

氣泡排序

def swap(l,a,b):
	temp=l[a]
	l[a]=l[b]
	l[b]=temp

l=[8,2,4,6,1,9,0,3,5,7]			
#maopao
for i in range(1,len(l)-1,1):
	for j in range(0,len(l)-i,1):
		if l[j]<l[j+1]:
			swap(l,j,j+1)
print(l)

插入排序

def swap(l,a,b):
	temp=l[a]
	l[a]=l[b]
	l[b]=temp

l=[8,2,4,6,1,9,0,3,5,7]
#charupaixu		
for i in range(1,len(l),1):
	k=i
	for j in range(0,i+1,1):
		if l[k]>l[i-j]:
			swap(l,k,i-j)
			k=i-j
			
print(l)

選擇排序

def swap(l,a,b):
	temp=l[a]
	l[a]=l[b]
	l[b]=temp

l=[8,2,4,6,1,9,0,3,5,7]
#xuanzepaixu
for i in range(0,len(l)-1,1):
	maxPos=i
	for j in range(i+1,len(l),1):
		if l[j]>l[maxPos]:
			maxPos=j
	if maxPos!=i:
		swap(l,maxPos,i)
print(l)