python之冒泡排序

冒泡排序原理:;两两比较, 将(大、小)的元素往右移

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]  将这列表中的元素两两替换

 

posted @ 2023-06-16 19:16  博无止境  阅读(16)  评论(0编辑  收藏  举报