Java (1) Selection Sort 选择排序

算法原理

工作原理:首先在未排序的序列中找到最小(最大)元素,存放到排序队列的起始位置,然后,再从剩余元素中继续查找最小(大)元素,放到已排序队列的末尾(即接着往后存放)。以此类推,知道所有元素排列完毕。

如果某个元素位于正确的最终位置上,则它不会被移动。选择排序每次交换一对元素,它们当中至少有一个将被移到其最终位置上,因此对n个元素的序列进行排序总共进行至多n-1次交换。在所有的完全依靠交换去移动元素的排序方法中,选择排序属于非常好的一种。

示例

Java语言实现

public static void main(String[] args) {
    int[] array = {7, 6, 8, 1, 5};
    int temp;
    for (int i = 0; i < array.length; i++) {
        int minIndex = i;
        for (int j = i; j < array.length; j++) {
            if (array[minIndex] > array[j]) {
                minIndex = j;
            }
        }
        temp = array[i];
        array[i] = array[minIndex];
        array[minIndex] = temp;

    }
    for (int a = 0; a < array.length; a++) {
        System.out.print(array[a]);
    }
}
Contents
  1. 算法原理
  2. 示例
  3. Java语言实现
|