选择排序的效率
比较次数O(N2) 交换次数是O(N)
补充
补充:选择排序(Selection Sort)每轮从未排序区选出最小(或最大)的元素,放到已排序区的末尾。比较次数固定为 n(n-1)/2,即 O(n²);交换次数为 O(n),比冒泡排序交换次数少。是不稳定排序(因为交换可能打乱相等元素的相对顺序),原地操作。
function selectionSort(arr) { const n = arr.length; for (let i = 0; i < n - 1; i++) { let minIdx = i; for (let j = i + 1; j < n; j++) { if (arr[j] < arr[minIdx]) minIdx = j; } if (minIdx !== i) [arr[i], arr[minIdx]] = [arr[minIdx], arr[i]]; } return arr; }
来源整理自:我的有道云笔记



