# quick sort:快速排序
import random
def quicksort(seq):
if len(seq) < 2:
return seq
else:
base = seq[0]
left = [elem for elem in seq[1:] if elem < base]
right = [elem for elem in seq[1:] if elem > base]
return quicksort(left) + [base] + quicksort(right)
seq = [9, 8, 7, 6, 1, 2, 3, 4]
random.shuffle(seq)
print(quicksort(seq))
#select sort :选择排序
def findMinialIndex(seq):
minElem = seq[0]
count = 0
minElemIndex = count
for elem in seq[1:]:
count += 1
if elem < minElem:
elem, minElem = minElem, elem
minElemIndex = count
return minElemIndex
def selectSort(sequence):
seq = sequence
length = len(seq)
for i in range(length):
index = findMinialIndex(seq[i:])
seq[index + i], seq[i] = seq[i], seq[index + i]
return seq
sequence = [1, 2, 4, 1, 8, 7, 9, 0, 5]
print(selectSort(sequence))