给类排序复杂度比较和冒泡排序与选择排序

Posted ygjzs

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了给类排序复杂度比较和冒泡排序与选择排序相关的知识,希望对你有一定的参考价值。

各个排序的比较

技术图片

冒泡排序

export default (arr) => {
  // 冒泡排序
  for (let i = arr.length - 1, tmp; i > 0; i--) {
    for (let j = 0; j < i; j++) {
      tmp = arr[j]
      if (tmp > arr[j + 1]) {
        arr[j] = arr[j + 1]
        arr[j + 1] = tmp
      }
    }
  }
  return arr
}

选择排序

export default (arr) => {
  // 选择排序
  for (let i = 0, len = arr.length, min; i < len; i++) {
    min = arr[i]
    for (let j = i + 1; j < len; j++) {
      if (arr[j] < min) {
        let c = min
        min = arr[j]
        arr[j] = c
      }
    }
    arr[i] = min
  }
  return arr
}

以上是关于给类排序复杂度比较和冒泡排序与选择排序的主要内容,如果未能解决你的问题,请参考以下文章

冒泡排序和选择排序的Java实现

冒泡排序和选择排序的Java实现

《数据结构与算法之美》08——排序冒泡排序插入排序选择排序

JavaScript 数据结构与算法之美 - 冒泡排序插入排序选择排序

算法漫游指北(第七篇):冒泡排序冒泡排序算法描述动图演示代码实现过程分析时间复杂度和选择排序算法描述动图演示代码实现过程分析时间复杂度

算法漫游指北(第七篇):冒泡排序冒泡排序算法描述动图演示代码实现过程分析时间复杂度和选择排序算法描述动图演示代码实现过程分析时间复杂度