冒泡排序原理:;两两比较, 将(大、小)的元素往右移
import random
a = random.sample(range(0, 10), 4) # 随机生成4个1到10之内的数字
lenth = len(a) # 获取长度
print(a) # 需要冒泡排序的列表
# 比较(趟数),最后一趟无需比较, 所以减1
for j in range(lenth - 1):
# -1:最后一趟无需比较,所以减1
# -j:每一趟都会将最大的数字移动到最后,最后面那个数字无需比较了,所以需要减j,这个是递增的
for i in range(lenth - 1 - j):
if a[i + 0] > a[i + 1]: # 如果第一个数大于第二个数
b = a[i + 1] # 将第二个数保存下来
a[i + 1] = a[i + 0] # 将第一个数覆盖到第二个数中
a[i] = b # 再将第二个数覆盖回第一个位置当中
print(a) # 每比较一趟的结果
print(a) # 比较完成之后的结果
# 思路:[1,0] 将这列表中的元素两两替换