冒泡算法
冒泡算法:说白了就是通过循环来把相邻的两个数字进行对比,对比过后进行调换
l = [2,5,12,352,1,23,35,63,5,2] # for i in range(len(l)-1): #这个是控制总共需要多少趟,需要循环N-1趟 for j in range(len(l)-1-i): #这个循环是控制交换的,减1是最后一位不用对比,下面2就没有了,没有【j+1】的下标,减i是每次循环都会有一位是排序好了,可以少循环一次 if l[j] > l[j+1]: #相邻的对比 l[j],l[j+1] = l[j+1],l[j] #相邻的交换 print(l) 结果:[1, 2, 2, 5, 5, 12, 23, 35, 63, 352]
#【优化版】 count = 1 num = [30, 66, 70, 57, 83, 68, 55, 34, 18, 23, 19, 13, 37, 2, 88, 24, 89, 71, 46, 98] for i in range(len(num)-1): for j in range(len(num)-1-i): if num[j+1] > num[j]: num[j],num[j+1] = num[j],num[j+1] else: num[j],num[j+1] = num[j+1],num[j] count+=1 print(num) print(count)
本文来自博客园,作者:他还在坚持嘛,转载请注明原文链接:他还在坚持嘛 https://www.cnblogs.com/brf-test/p/12822549.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架