选择排序

阅读量: 475 编辑

选择排序 - selectSort

一、排序步骤

  • 1、首先在未排序的序列中找到最小(大)元素,存放到排序序列的起始位置。

  • 2、再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的后面。

  • 3、重复第二步,直到所有元素均排序完毕。

二、Java代码

//选择排序:正序排列
public static int[] selectSort(int[] array) {
    if (array.length == 0)
        return array;

    for (int i = 0; i < array.length; i++) {
        int minIndex = i; //最小数的下标

		//j = i,表示从剩余未排序的序列中找到最小(大)元素
        for (int j = i; j < array.length; j++) {
            if (array[j] < array[minIndex]) {//找到最小的数
                minIndex = j;
            }
        }
		
        //找到最小的数据,和 i 下标数据交换(已排序序列的后面)
        int tmp = array[minIndex];
        array[minIndex] = array[i];
        array[i] = tmp;
    }

    return array;
}

三、代码总结

先选择出目标数据,然后往前放,放在已排序序列之后。

  • 1、双重循环:外循环遍历所有数据,内循环从未排序元素中找到最小值

  • 2、将最小值和已排序序列之后的数据交换

苏ICP备13052010号-3
©2022 南京匠成信息科技有限公司