排序算法之选择排序

Posted 朱家墩小芳

tags:

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

        选择排序(Selection sort)是一种简单直观的排序算法。它的工作原理是每一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,直到全部待排序的数据元素排完。
package cn.ccnu.sort;  
 
public class Select {  
    public static void selectSort(int[] data){  
        int min = -1; // 用于最小值的小标  
        for(int i=0; i<data.length; i++){  
            min = i; // 每次假设当前数为最小数,记录其下标  
            for(int j=i+1; j<data.length; j++){  
                if(data[j] <= data[min]){  
                    min = j;  
                }  
            }  
            if(min != i){  
                swap(data, min, i);  
            }  
        }  
    }  
      
    private static void swap(int[] data, int a, int b) {  
        int temp = data[a];  
        data[a] = data[b];  
        data[b] = temp;  
    }  
      
    public static void main(String[] args) {  
        int[] data = {10, 3, 12, 5, 4, 9, 5, 7, 6};  
        selectSort(data);  
        for (int i : data) {  
            System.out.print(i + "  ");  
        }  
    }  

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

算法排序算法之选择排序

排序算法之冒泡选择插入排序(Java)

排序算法之冒泡选择插入排序(Java)

经典排序算法和Python详解之选择排序和二元选择排序

算法基础之选择排序

常用排序算法之选择排序