Python之冒泡排序
简单版:
1 def paixu(values): 2 # 结算列表的长度 3 n = len(values) 4 # 外层循环控制从头走到尾的次数 5 for j in range(n - 1): 6 # 用一个count记录一共交换的次数,可以排除已经是排好的序列 7 count = 0 8 # 内层循环控制走一次的过程 9 for i in range(0, n - 1 - j): 10 # 如果前一个元素大于后一个元素,则交换两个元素(升序) 11 if values[i] > values[i + 1]: 12 # 交换元素 13 values[i], values[i + 1] = values[i + 1], values[i] 14 # 记录交换的次数 15 count += 1 16 # count == 0 代表没有交换,序列已经有序 17 if 0 == count: 18 break 19 20 if __name__ == '__main__': 21 values = [888, 206, 33, 7, 4, 1, 404, 550, 0,18,6] 22 print("原列表为:{}".format(values)) 23 paixu(values) 24 print("新列表为:{}".format(values))
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步