数据结构与算法—— 选择排序

Posted sun-iot

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据结构与算法—— 选择排序相关的知识,希望对你有一定的参考价值。

选择排序(Selection sort)是一种简单直观的排序算法。它的工作原理是:第一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,然后再从剩余的未排序元素中寻找到最小(大)元素,然后放到已排序的序列的末尾。以此类推,直到全部待排序的数据元素的个数为零。选择排序是不稳定的排序方法。

介绍

上面介绍过了,不再做介绍了

排序思路

  • 从头或者尾开始
  • 第一个元素依次比较其后的每一个元素,比较完之后。第二个元素依次比较其后的每一个元素,以此类推
  • 直到最后

选择分析

技术图片

代码实现

    public static void selectSort(int[] data){
        int length = data.length;
        for (int i = 0; i < length - 1; i++) {
            boolean flag = false ;
            for (int j = i+1 ; j < length ; j ++){
                if (data[i] > data[j]){
                    int temp = data[i] ;
                    data[i] = data[j] ;
                    data[j] = temp ;
                    flag = true ;
                }
                System.out.println("第" + (i+1) + "-" + j + "次排序: " + Arrays.toString(data));
            }
            if (!flag){
                break;
            }
            System.out.println("第" + (i+1) + "次大排序: " + Arrays.toString(data) + "
");
        }
    }

技术图片

以上是关于数据结构与算法—— 选择排序的主要内容,如果未能解决你的问题,请参考以下文章

选择排序算法详解及代码实现

JavaScript算法(冒泡排序选择排序与插入排序)

数据结构与算法选择排序的实现

数据结构与算法选择排序的实现

数据结构与算法选择排序的实现

数据结构与算法选择排序的实现