选择排序

插入排序算法的实现思路有点类似插入排序,也分已排序区间和未排序区间,但是选择排序每次都会从未排序区间中找到最小的元素,将其放到已排序区间的末尾。

选择排序

 

代码如下:

/**
 * 插入排序
 * @param arrays
 */
public void sort(int[] arrays) {
        if (arrays == null) {
            return;
        }
        int length = arrays.length;
        for (int i = 0; i < length-1; i++){
            int pos = i;
            for (int j = pos+1; j < length; j++) {
                if (arrays[pos] > arrays[j]) {
                    pos = j;
                }
            }
            if (pos != i) {
                int temp = arrays[pos];
                arrays[pos] = arrays[i];
                arrays[i] = temp;
            }
        }
    }