冒泡算法: 5 4 3 6 8 7
第一次:找到最大值放到列表的最后一个位置 5 4 3 6 8 7--》5 4 3 6 7 8
第二次:找到次大值放到列表的倒数第二个位置 5 4 3 6 8 7--》5 4 3 6 7 8
第三次:找到第三大值放到列表的倒数第三个位置 5 4 3 6 8 7--》5 4 3 6 7 8
顺序排好了
找到最大的值: [5,4,3,6,8,7] [4,5,3,6,8,7] [4,3,5,6,8,7] [4,3,5,6,8,7] [4,3,5,6,8,7] [4,3,5,6,7,8]
第一次找到最大值了
第二次就不让最后一个元素参加比较,会找到次大值
第三次就不让最大值和次大值参加比较, 会找到第三大值
a = [5, 4, 3, 6, 8, 7]
for i in range(len(a) - 1): # 找最大数的过程是n-1
for j in range(len(a) - 1 - i): # i第一次0,第二次是1.。。。
if a[j] > a[j + 1]:
a[j], a[j + 1] = a[j + 1], a[j]
# print(a)
print("*******************")
print(a)
原文:https://www.cnblogs.com/testerWangzhao/p/11762472.html