下面的代码是哪种排序技术?



下面是一个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]

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

如果你有什么问题尽管问。

最新更新