【问题标题】:Which sorting technique is the below code?下面的代码是哪种排序技术?
【发布时间】:2021-10-06 17:40:40
【问题描述】:

下面是一个 javascript 代码,用于对具有 n 个数字的数组进行升序排序。我在几次采访中使用过这段代码,但无法弄清楚这是哪种排序技术。

let arr = [7, 9, 2, 11, 5]

for (let i = 0; i < arr.length; i++) {
  for (let j = i + 1; j < arr.length; j++) {
    if (arr[j] < arr[i]) {
      let temp = arr[i]
      arr[i] = arr[j]
      arr[j] = temp
    }
  }
}

console.log(arr)   //[2, 5, 7, 9, 11]

【问题讨论】:

标签: javascript arrays sorting


【解决方案1】:

这种排序技术称为选择排序,它的空间复杂度为 O(n) 这段代码背后的逻辑是找到未排序数组中的最小元素并将其与未排序数组开头的元素交换。同样,它们也有许多排序技术,如插入排序、冒泡排序等等。

如果您发现任何问题,请随时提出任何问题:)

【讨论】:

    猜你喜欢
    • 2013-08-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-09-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-01-17
    相关资源
    最近更新 更多