冒泡排序
以下为冒泡排序的讲解
假设有 10 个数,分别为:[2, 1, 3, 5, 4, 6, 8, 7, 11, 13]
冒泡排序即:
先分为 n-1 轮(n 为列表的总数),原因:欲两两比较大小,使得获得正确的排序,则此时,最差的可能情况是最小的在最右遍(按从小到大排序),则此时,需要 n-1 次,可画图理解。
之后每一轮都要排 n-1 次,原因上同,都可以从画图理解。
至于怎么排,使两个数两两间排序即可。
以下为 python 代码
a = []
for i in range(int(input())):
a.append(int(input()))
for i in range(len(a)-1):
for j in range(len(a)-1):
if a[j] < a[j+1]:
a[j], a[j+1] = a[j+1], a[j]
print(a) # 也可用遍历的方式输出,不作赘述