Java 数组 之 一维数组 选择排序算法

Posted verejava

tags:

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

http://www.verejava.com/?id=16992690199232

/*
用选择排序:
思路:
    1. 将数组中剩下的没有排序的元素中选出最小的一个, 插入已经排序的后面
*/
public class SelectSort {
    
    public static void sort(int[] arrays){
        int minIndex;//保存选择最小值的索引
        for (int i = 0; i < arrays.length-1; i++) {
            minIndex=i;
            int minValue=arrays[minIndex];//保存每次循环最小值为循环的第一元素的值
            for (int j = i; j < arrays.length-1; j++) {
                //与每个元素比较如果小于最小值则交换值并且保存交换值的索引为最小值索引
                if(minValue>arrays[j+1]){
                    minValue=arrays[j+1];
                    minIndex=j+1;
                }
            }
            if(i!=minIndex)//判断如果最小值索引改变则把当前最小值与以排序的最后一个元素交换
            {
                int temp=arrays[i];
                arrays[i]=arrays[minIndex];
                arrays[minIndex]=temp;
            }
        }
    }

    public static void main(String[] args) {
        
        int[] scores={90,70,50,80,60,85};
        sort(scores);
        for(int score:scores){
            System.out.print(score+",");
        }
    }

}

http://www.verejava.com/?id=16992690199232

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

Java数组排序算法之直接选择排序

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

Java 数组 之 一维数组

排序算法总结之堆排序

Java 数组 之 一维数组 追加 元素

[Java数据结构与算法]简单排序之插入排序