java冒泡算法排序
java冒泡算法排序的代码实现如下:
import java.util.Arrays; public class BubbleSort { public static void main(String[] args){ int[] arr = new int[]{2,3,7,1}; for(int i=0;i<arr.length-1;i++){ for(int j=0;j<arr.length-1-i;j++){ if(arr[j]>arr[j+1]){ int temp = arr[j+1]; arr[j+1] = arr[j]; arr[j] = temp; } } System.out.println("第"+(i+1)+"次循环之后:"+Arrays.toString(arr)); } } }
控制台的输出如下:
第1次循环之后:[2, 3, 1, 7] 第2次循环之后:[2, 1, 3, 7] 第3次循环之后:[1, 2, 3, 7]
代码使用了一个外循环陷套一个内循环的形式,数组的长度是4,外循环循环了3次,
第1次循环之后,把第1最大值放到数组的最后第1位,
第2次循环之后,把第2最大值放到数组的最后第2位,
第3次循环之后,把第3最大值放到数组的最后第3位,
自然而然,不用再循环,第4最后值就会放到最后第4位了,所以外循环只用循环3次就可以了。
内循环时,每次只比较相邻两个数值,把较大值置后,较小值置前,
第1次外循环时,内循环要把最大值放到最后,所以要比较4个数值,内循环3次就可以了,
第2次外循环时,不用比较最大值,因为它已经放到最后了,所以要比较3个数值,内循环2次就可以了,
第3次外循环时,只用比较两个数值,内循环1次即可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix