public class 选择排序 {
public static void main(String[] args) {
int[] arr = {2,5,9,7,3,6,4,1};
//6.循环重复操作
for (int j = 0; j < arr.length; j++) {
//2.定义变量存储最小的位置
int minPos = j;
//1.遍历数组找出最小值
for (int i = j+1; i < arr.length; i++) {
if (arr[minPos] > arr[i]){
//4.保存最小值的位置
minPos = i;
}
}
//5.进行交换
//5.1定义一个临时变量将起始位置的值赋值给临时变量
// 此时起始位置的值为空
int temp = arr[j];
//5.2将最小的值赋值给起始位置
// 此时起始位置的值是最小的
arr[j] = arr[minPos];
//5.3将临时变量交换给最小值位置
// 此时最小值位置的数值改为起始位置的值
arr[minPos] = temp;
}
//7.遍历最终结果
for (int i = 0; i < arr.length; i++) {
System.out.print(arr[i] + " ");
}
}
}
数据结构-排序-选择排序
最新推荐文章于 2024-05-22 15:52:04 发布