1. 算法思想
简单选择排序是一种基本的排序算法,
它的思想是
- 每次从待排序的序列中选择一个最小(或最大)的元素,放到已排序的序列末尾,直到所有元素都排好序。
它的时间复杂度是O(n^2),空间复杂度是O(1)。
2. 图解
3. JAVA实现
下面是简单选择排序的JAVA实现:
public class SelectionSort {
public static void sort(int[] arr) {
// 遍历数组,每次找出最小的元素
for (int i = 0; i < arr.length - 1; i++) {
// 记录最小元素的索引
int minIndex = i;
// 从i+1开始,比较剩余的元素
for (int j = i + 1; j < arr.length; j++) {
// 如果找到更小的元素,更新最小索引
if (arr[j] < arr[minIndex]) {
minIndex = j;
}
}
// 如果最小索引不是i,交换两个元素
if (minIndex != i) {
int temp = arr[i];
arr[i] = arr[minIndex];
arr[minIndex] = temp;
}
}
}
public static void main(String[] args) {
// 测试数组
int[] arr = {5, 3, 7, 9, 1, 4, 6, 8, 2};
// 调用排序方法
sort(arr);
// 打印排序后的结果
for (int num : arr) {
System.out.print(num + " ");
}
}
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
2018-07-03 java System.arrayCopy使用说明
2018-07-03 list.remove的使用分析