python-冒泡排序
冒泡排序是一种排序算法:
有几个杂乱无序的数字,用第1个数跟第2个数字做比较,若第1个数大则互换位置,
再用第2个数与第3个数做计较,若前者大,则互换位置,直到这些数字中最大值冒到最上面,
然后进行第2、3、4轮......,直到所有的数按从小到大排序
比如对列表a=[1,7,4,89,34,2]进行冒泡排序:
第1轮:a=[1,7,4,89,34,2]
1<7 a=[1,7,4,89,34,2]
7>4 a=[1,4,7,89,34,2]
7<89 a=[1,4,7,89,34,2]
89>34 a=[1,4,7,34,89,2]
89>2 a=[1,4,7,34,2,89]
第2轮:a=[1,4,7,34,2,89]
1<4 a=[1,4,7,34,2,89]
4<7 a=[1,4,7,34,2,89]
7<34 a=[1,4,7,34,2,89]
34>2 a=[1,4,7,2,34,89]
第3轮: a=[1,4,7,2,34,89]
1<4 a=[1,4,7,2,34,89]
4<7 a=[1,4,7,2,34,89]
7>2 a=[1,4,2,7,34,89]
第4轮:a=[1,4,2,7,34,89]
1<4 a=[1,4,2,7,34,89]
4>2 a=[1,2,4,7,34,89]
第5轮 a=[1,2,4,7,34,89]
1<2 a=[1,2,4,7,34,89]
所以最后列表a的冒泡结果是: a=[1,2,4,7,34,89]
python语句,利用for循环实现冒泡排序
a=[1,7,4,89,34,2] def maopao_sort(a): for i in range(0,len(a)-1):#冒泡循环的次数 for j in range(0,len(a)-1-i):#j为列表下标 if a[j]>a[j+1]:#如果前者大于后者,互换位置 a[j],a[j+1]=a[j+1],a[j] maopao_sort(a) print(a)