冒泡排序~

1、对应长度len 数组,需要进行 len -1 趟冒泡,每趟冒泡,将最大(小)元素排列到最后无序位置

2、每趟冒泡从第一个元素开始,邻近两两比较,找出最大元素

每一趟冒泡,都进行元素交换,这里可以识别当没有发生元素交换,说明已经有序,直接结束

复制代码
int[] data = {0,5,4,8,9,3,2,67,23};
int len = data.length;

for(int loop = 0;loop< len-1;loop++){
    for(int j =0;j<len-1-loop;j++){
        if(data[j]>data[j+1]){
            int tmp =data[j];
            data[j]=data[j+1];
            data[j+1]=tmp;
        }
    }
}

每一趟冒泡,标记最大元素小标,结束再跟最后一个无序元素交换

复制代码
int[] data = {0,5,4,8,9,3,2,67,23};
int len = data.length;

for(int loop = 0;loop< len-1;loop++){
    int max_index = 0;
    for(int j =0;j<len-1-loop;j++){
        if(data[max_index]<data[j+1]){
            max_index = j+1;
        }
    }

    if(max_index != len -1 -loop){
        int tmp = data[max_index];
        data[max_index] = data[len-1-loop];
        data[len-1-loop] = tmp;
    }
}
相关推荐
折哥的程序人生 · 物流技术专研20 小时前
Java面试85题图解版 · 特别篇:2026后端高频面试题复盘(算法底层逻辑+高并发架构设计全解析,附Java实战代码)
java·网络·数据库·算法·面试
xxie12379420 小时前
return与print
开发语言·python
秋920 小时前
从 Python 后端工程师转型 AI Engineer(AI 工程化)的完整补课清单(2026实战版)
开发语言·人工智能·python
一条泥憨鱼20 小时前
【Redis】数据类型和常用命令
java·数据库·redis·后端·缓存
云烟成雨TD21 小时前
Spring AI Alibaba 1.x 系列【78】沙箱(Sandbox)
java·人工智能·spring
程序员二叉21 小时前
【Java】 异常高频面试题精讲 | 易错点+对比总结
java·开发语言·面试
周航宇JoeZhou21 小时前
JB3-9-SpringAI(二)
java·ai·agent·多智能体·调度·智能体·观察
好家伙VCC21 小时前
Web Components主题热切换方案揭秘
java·前端
慕木沐21 小时前
Google ADK Java 1.0版本 核心机制与实战 Demo
java·开发语言·python
想吃火锅100521 小时前
【leetcode】14.最长公共前缀js
算法·leetcode·职场和发展