Part2-->选择排序

选择排序-->数据移动最少,每次从剩下的元素中找出最小的的元素(j控制的循环)移动到已经排好序的元素未排好序的元素之间

public class Selection{
    public static void sort(Comparable[] a) { 
        // 将a[]按升序排列
        int N = a.length; // 数组长度
        for (int i = 0; i < N; i++) { 
        // 将a[i]和a[i+1..N]中最小的元素交换
            int min = i; // 最小元素的索引
            for (int j = i+1; j < N; j++)
                if (less(a[j], a[min])) min = j;
            exch(a, i, min);
        }
    }
}

 

posted @ 2018-10-29 10:49  stitchGoGo  阅读(104)  评论(0编辑  收藏  举报