Java教程

【学习打卡】第28天 数据结构和算法

本文主要是介绍【学习打卡】第28天 数据结构和算法,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

JS实现选择排序

思路

  1. 选择数组中的最小值,并将其放到第一位
  2. 接着寻找第二小的值,放到第二位
  3. 依次执行n-1轮,选择排序完成
Array.prototype.selectSort = function () {
  for (let i = 0; i < this.length - 1; i++) {
    let minIndex = i;
    for (let j = i; j < this.length; j++) {
      if (this[j] < this[minIndex]) {
        minIndex = j
      }
    }
    if (i !== minIndex) {
      const temp = this[i];
      this[i] = this[minIndex];
      this[minIndex] = temp;
    }
  }
}

arr.selectSort()
console.log(arr)

时间复杂度:O(n^2)
空间复杂度:O(1)

这篇关于【学习打卡】第28天 数据结构和算法的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!