交换排序--选择排序

2018-09-06  本文已影响0人  iarchitect

算法原理

每一次从待排序的数据元素中选出最小或最大的一个元素,存放到序列的起始位置,直到全部待排序的数据元素排完。

代码实现

import java.util.Arrays;

public class SelectionSort {

    public static void main(String[] args) {

        Integer[] unsortedArray = {1, 2, 3, 5, 4, 6, 9, 8, 7, 10};

        int minIndex = 0;
        int temp = 0;

        for (int i = 0; i < unsortedArray.length - 1; i++) {
            minIndex = i;//无序区最小数据数组下标
            for (int j = i + 1; j < unsortedArray.length; j++) {

                if (unsortedArray[j] < unsortedArray[minIndex]) {
                    minIndex = j;
                }
            }
            //将最小元素放到本次循环的前端
            temp = unsortedArray[minIndex];
            unsortedArray[minIndex] = unsortedArray[i];
            unsortedArray[i] = temp;
        }
        
        System.out.println(Arrays.toString(unsortedArray));
    }
}

运行结果

image.png
上一篇下一篇

猜你喜欢

热点阅读