排序算法之选择排序

Posted itblock

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了排序算法之选择排序相关的知识,希望对你有一定的参考价值。

快要过节了,目前先把代码贴上,后续加上图示和复杂度信息

package com.jdk8.SortTest;

public class SelectSortTest {
    public static void main(String[] args){
        int[] params = new int[]{1,9,5,2,7,4,3,8};
        System.out.println("排序前的数据为:");
        display(params);
        selectSorted(params);
        System.out.println("排序后的数据为:");
        display(params);
    }

    public static void display(int[] arrays){
        for(int i = 0;i < arrays.length;i++){
            System.out.print(" " +  arrays[i] + " ");
        }
    }

    private static void selectSorted(int[] params) {
        if(null == params || params.length < 1){
            return ;
        }
        int min = 0;
        int ref = 0;
        for(int i = 0;i < params.length - 1;i++){
            min =  params[i];
            for(int j = i + 1;j < params.length;j++){
                if(min > params[j]){
                    min = params[j];
                    ref = j;
                }
            }
            min =  params[i];
            params[i] = params[ref];
            params[ref] = min;
        }
        System.out.println();
    }
}

运行结果如下:

排序前的数据为:
 1  9  5  2  7  4  3  8 
排序后的数据为:
 1  2  3  4  5  7  8  9 

以上是关于排序算法之选择排序的主要内容,如果未能解决你的问题,请参考以下文章

算法排序之堆排序

常用排序算法之选择排序

经典算法之选择排序

排序算法系列之选择排序

数据结构与算法之排序算法:选择排序

看动画学算法之:排序-选择排序