算法:选择排序

FLowUs邀请链接:https://flowus.cn/login?code=AXNU63
FlowUs邀请码:AXNU63


  • 循环待排序序列,for(i=0; i<N; i++)
    • 从第i个到第N-1个元素中找到最小的,并将其位置存下来
    • 将未排序部分的最小的换到有序部分的最后位置
public class SelectSort {
    public static void main(String[] args) {
        int [] arr = {49,38,65,97,76,13,27,49};
        selectSort(arr,arr.length);
    }
 
    public static void selectSort(int [] arr,int n){
        for (int i = 0; i < n - 1; i++) {
            int index = i;
            int j;
            // 找出最小值得元素下标
            for (j = i + 1; j < n; j++) {
                if (arr[j] < arr[index]) {
                    index = j;
                }
            }
            int tmp = arr[index];
            arr[index] = arr[i];
            arr[i] = tmp;
            System.out.println(Arrays.toString(arr));
        }
 
    }
}
posted @ 2020-01-23 00:19  wbytts  阅读(416)  评论(0编辑  收藏  举报