#!/usr/bin/python3
# Test1.定义一个函数,该函数可接收一个list作为参数,该函数使用直接选择排序对list排序
# 直接排序:重复的访问序列(len-1)次,每次选出一个最小或者最大的数字并放在截取序列的首位(与首位的值做比较),数列的访问比较范围依次减少:每次从i遍历到到len-1(i累加)
def pureSort(list):
lens=len(list)
for i in range(lens-1):
minPos=i # 此时的i为当前访问序列的首位,即本轮需要选出最小的数字
for j in range(i,lens-1): #从当前i遍历到lens-1(下面j+1相当于遍历到lens),每次和minPos比较序列的值,若小于minPos,则交换索引
if list[j+1]<list[minPos]:
minPos=j+1
list[minPos],list[i]=list[i],list[minPos] # 每轮比较结束交换最小值
list1=[99,2,1,3,4,10,5,9,7]
pureSort(list1)
print(list1)
# Test2.定义一个函数,该函数可接收一个list作为参数,该函数使用冒泡排序对list排序
# 冒泡排序:重复的走访序列(len-1)次,依次比较两个相邻元素的大小(len-i-1),如果顺序错误就将他们调换过来。i为走访轮数
k=0
def bubbleSort(list):
length=len(list)
global k
for i in range(length-1):
for j in range(length-i-1):
k=k+1
疯狂Python讲义Unit5Test
最新推荐文章于 2022-10-01 11:21:41 发布