用js写一个选着性排序
以下是使用JavaScript编写的选择排序算法:
function selectionSort(arr) {
for (let i = 0; i < arr.length - 1; i++) {
let minIndex = i;
for (let j = i + 1; j < arr.length; j++) {
if (arr[j] < arr[minIndex]) {
minIndex = j;
}
}
if (minIndex !== i) {
let temp = arr[i];
arr[i] = arr[minIndex];
arr[minIndex] = temp;
}
}
return arr;
}
// 示例
const arr = [5, 3, 8, 4, 2];
console.log(selectionSort(arr)); // [2, 3, 4, 5, 8]
该算法的基本思想是,遍历数组,每次找到未排序部分中最小的元素,然后将其与当前未排序部分的第一个元素交换位置,直到完成排序。时间复杂度为O(n^2)。
原文地址: http://www.cveoy.top/t/topic/4eO 著作权归作者所有。请勿转载和采集!