//减少了数组内元素的交换次数,因此性能比冒泡排序好,用时短
public static void main(String[] args) {
//选择排序方法
//思路:第一次选择一个最小的数,和第一个元素交换
//第二次从第二个元素遍历到最后,选择最小的数和第二个元素进行交换
//。。。
//第n-1此,比较Array[n-2]和Array[n-1]大小,选择小的放在n-1的下标
int[] array = {-2,13,11,-9,8};
for (int i = 0; i < array.length-1; i++) {
int minIndex = i;
int min = array[i];
for (int j = i+1; j < array.length; j++) {
if(min>array[j]){
//标记最小元素坐标
minIndex= j;
min = array[j];
}
}
//交换最小元素和第一个元素
array[minIndex] = array[i];
array[i] = min;
System.out.printf("遍历第%d",i+1);
System.out.println();
for (int m = 0; m < array.length; m++) {
System.out.print(array[m]+" ");
}
System.out.println();
}
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?