美文网首页
选择排序(冒泡排序)

选择排序(冒泡排序)

作者: 面向全麦面包编程 | 来源:发表于2020-07-15 21:29 被阅读0次

核心代码

public static void sort(Comparable[] a) {
        //将a[]按升序排列
        int N = a.length;
        for (int i = 0; i < N; i++) {
            int min = i;
            for (int j = i + 1; j < N; j++) {
                if (less(a[j], a[i])) min = j;
            }
            exch(a, i, min);
        }
    }

Tips:

  • 选择排序的运行时间是平方级别的,不需要额外的存储空间
  • 选择排序核心思想是外循环每次确定当前的最小元素(范围:[i,a.length-1]),内循环只是在比较当前元素与目前已知的最小元素,其实就是每次选择一个最小的
  • 选择排序不会访问索引左侧的元素

相关文章

网友评论

      本文标题:选择排序(冒泡排序)

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