冒泡排序 双重遍历
冒泡排序的思路:从交换起始位置开始,比较相邻的两个数,如果j位置大于j+1位置的数,则发生交换。
冒泡排序的遍历:采用双重遍历,第一遍从j=0位置,一直比较到len(o)-1的位置,最大数将会在最后一位。第二遍从j=0位置,一直比较到len(o)-1-1的位置,第二大数将会在倒数第二位。
冒泡排序的参数:交换对象为元素,交换起始位置为0,交换终止位置为len(o)-1-i,需要遍历的元素i为len(o)-1个,交换条件根据升序还是降序要求来选择。
l = [8,9,7,6,5,4,3,2,1]
for i in range(len(l)-1): # i=0,1,2,3,4,5,6,7 共8趟
for j in range(len(l)-1-i): # j 遍历剩下未排好序的数
if l[j] > l[j+1]:
l[j], l[j+1] = l[j+1], l[j]
print(l)
浙公网安备 33010602011771号