Skip to content
本页目录

排序

稳定性

时间复杂度

空间复杂度

名称稳定性时间复杂度空间复杂度说明
冒泡排序O(n)O(1)-
插入排序O(n)O(1)-
希尔排序×O(n)O(1)-
选择排序×O(n²)O(1)-
堆排序×O(1)-
快速排序×--
归并排序O(n)-
计数排序O(n+k)O(n+k)-
桶排序O(n)O(n+k)-
基数排序×O(n*k)O(n+k)-

排序

JS
let arr = [23, 72, 53, -9, 3, 7, 11, 172]
let arr = [23, 72, 53, -9, 3, 7, 11, 172]

冒泡排序

JS
function bubbleSort(arr) {
    const len = arr.length

    for(let i = 0; i < len; i++) {
        if(arr[i] > arr[i+1] && i < len) {
            let c = arr[i]
            arr[i] = arr[i+1]
            arr[i + 1] = c
        }
    }

    return arr
}

bubbleSort(arr)
function bubbleSort(arr) {
    const len = arr.length

    for(let i = 0; i < len; i++) {
        if(arr[i] > arr[i+1] && i < len) {
            let c = arr[i]
            arr[i] = arr[i+1]
            arr[i + 1] = c
        }
    }

    return arr
}

bubbleSort(arr)