冒泡排序:每次去相邻的两个元素比较,不合适就交换,依次向后
选择排序:将第一个元素和后面的元素挨个轮流比较,如果按照从小到大排序,大的排序往后面
#排序函数
def paixu(li):
for j in range(1, len(li)): #j是外层循环的次数,所以j的范围是range(1, len(li))=(1,5)即[1,2,3,4]
for i in range(j, len(li)): #内层循环,i是比较元素,每次外循环一次确定一个数字,所以它的范围是range(j, len(li))
if li[j] > li[i]:
li[j], li[i] = li[i],li[j]
return li
li=[1,2,56,8,34]
print(paixu(li)
冒泡排序
lt=[1,9,4,3,19,6,8,5]
n=len(lt)
for i in range(n-1): #外层循环控制圈数i,n个数循环n-1次
for j in range(n-1-i): #减去i是为了提高效率,一次确定一个数字,不需要重复再次比较
if lt[j]>lt[j+1]: #不合适,交换数据,此处是升序排序,若想降序需要将 > 改为 <
lt[j],lt[j+1]=lt[j+1],lt[j]
print(lt)