选择排序--第1轮

    技术2025-05-25  40

    public class Choose { public static void main(String[] args){ System.out.println("这是选择排序"); System.out.println(); int[] arr={5,23,46,1,12}; System.out.println("排序前:" +Arrays.toString(arr)); System.out.println(); sortChoose(arr); } public static void sortChoose(int[] arr){ /** * minIndex是数组的索引 * min是索引对应的数组元素。 * 定义第1个元素的索引 * 设第1个元素是最小的 */ int minIndex=0; int min=arr[0]; /** * 将第1个元素与后面元素作比较, * 后面元素的索引是0+1. */ for(int j=0+1;j<arr.length;j++){ /** * 如果第1个元素大于后面的元素, * 说明第1个元素不是最小的,标记后面元素的索引, * 并把后面元素的值赋给最小值。 */ if(min>arr[j]){ minIndex=j; min=arr[j]; } } /** * 这2步是把最小值与第1个元素交换 * arr[minIndex]=arr[0];把后面元素与第1个元素交换 * arr[0]=min;把最小值赋给第一个元素 * * 数组的索引是从0开始的。 * arr[minIndex]是最小索引对应的数组元素, * arr[0]是第1个索引对应的数组元素。 * 经过循环已经判断出后面元素是最小值 * 把数组第1个元素赋给最小值。 */ arr[minIndex]=arr[0]; //把最小值赋给第1个元素。 arr[0]=min; System.out.println("第一轮:"); System.out.println(Arrays.toString(arr)); } }
    Processed: 0.011, SQL: 9