[排序] 冒泡排序

2017-11-13  本文已影响0人  爱上落入尘世间的你
冒泡排序
冒泡排序

冒泡排序的就是一趟一趟的对数组进行遍历,比较前后两个数的大小并排序

思路很简单, 这里就不过多解释了

主要是有几个点需要注意:

这里以从小到大的排序为例

  1. 第一趟的遍历会让最大的元素排到最后,第二趟会让第二大的元素排到倒数第二,以此类推
function bubbleSort(array)
{
    let finish = false

    while( ! finish)
    {
        console.log(array.join(' '))
        finish = true
        for(let i = 0; i <= array.length - 2; i ++)
        {
            if(array[i] > array[i + 1])
            {
                swap(array, i, i + 1)
                finish = false
            }
        }
    }
}

function swap(array, a, b)
{
    const temp = array[a]
    array[a] = array[b]
    array[b] = temp
}

const testArray = []

for(let i = 0; i < 10; i ++)
{
    testArray.push(Math.random())
}

bubbleSort(testArray)
上一篇 下一篇

猜你喜欢

热点阅读