冒泡排序

复制代码
 1 public static void main(String[] args) {
 2         int[] arr={44,5,38,56,2};
 3         int temp = 0;
 4         int a = 0;
 5         for (int i = 0; i < arr.length; i++) {
 6             System.out.println("i的值为"+i);
 7             for (int j = 0; j < arr.length-1; j++) {
 8                  //当56和2交换完,又重新开始,从0遍历到2那里交换,还有优化空间?
 9                 //第二个for循环减一应为当遍历到第三个数时,还有最后一个数进行比较
10                 //不减去一遍历到最后一个数没有比较
11                 //System.out.println("arr长度:"+arr.length+"j值为:"+arr[j]+"j+i:"+arr[j+1]);
12                 if (arr[j]>arr[j+1]) {
13                     temp=arr[j];
14                     arr[j]=arr[j+1];
15                     arr[j+1]=temp;
16                     
17                 }
18                 a++;
19             }
20             
21         }
22         System.out.println("遍历次数"+a);
23         for(int num:arr){
24             System.out.println(num); 
25         }
26     }

 

要是在第二个循环在减去i

 


复制代码

 

posted @   孤海飞雁  阅读(132)  评论(0编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· 写一个简单的SQL生成工具
· AI 智能体引爆开源社区「GitHub 热点速览」
点击右上角即可分享
微信分享提示