美文网首页
交换排序--选择排序

交换排序--选择排序

作者: iarchitect | 来源:发表于2018-09-06 12:16 被阅读0次

    算法原理

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

    代码实现

    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

    相关文章

      网友评论

          本文标题:交换排序--选择排序

          本文链接:https://www.haomeiwen.com/subject/fdztgftx.html