选择排序(Java版)

选择排序:

从索引0开始,依次与后面元素比较,小的往前放,
第一次结束,最小值出现在最小索引处。

规则:

第一次是从索引0开始于后面元素比较;
第二次是从索引1开始于后面元素比较;.
.....
最后一次是数组长度-2的元素和数组长度-1的元素比较;

时间复杂度:

选择排序是一种简单直观的排序算法,
无论什么数据进去都是 O(n²) 的时间复杂度。
所以用到它的时候,数据规模越小越好。.

参考代码:

   public static void selectSort(int[] nums) {
      for (int i = 0; i < nums.length - 1; i++) {
        for (int j = i + 1; j < nums.length; j++) {
            if (nums[j] < nums[i]) {
                int temp = nums[j];
                nums[j] = nums[i];
                nums[i] = temp;
            }
        }
    }
}

测试结果:


©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 思路 原理是每一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,直到全部待排序的数据元素...
    Skymiles阅读 1,677评论 0 1
  • 选择排序是每次循环都从未被选择的数组中选取一个最小值放在数组前面。第一次循环将全部数组中的最小值放在下标为0的位置...
    lkmc2阅读 5,457评论 0 0
  • 排序的基本概念 在计算机程序开发过程中,经常需要一组数据元素(或记录)按某个关键字进行排序,排序完成的序列可用于快...
    Jack921阅读 5,355评论 1 4
  • 知 识 点 / 超 人 数据结构算法排序是比较枯燥的知识,学习一定要耐着性子看,不然很容易理解错误。本文比较适合自...
    树下敲代码的超人阅读 10,629评论 9 58
  • 1 初级排序算法 排序算法关注的主要是重新排列数组元素,其中每个元素都有一个主键。排序算法是将所有元素主键按某种方...
    深度沉迷学习阅读 5,349评论 0 1