美文网首页
冒泡排序

冒泡排序

作者: imjcw | 来源:发表于2018-09-14 16:27 被阅读0次

算法说明

  • 每次都从数组的第一个数开始比较,每次比较一位
  • 每遇到比自己小的值,就替换两者位置

实现

PHP版本

function bubbleSort($arr)
{
    $length = count($arr);

    if ($length < 2) {
        return $arr;
    }

    foreach ($arr as $i => $row) {
        for ($j = 0; $j < $length - $i - 1; $j++) {
            if ($arr[$j] > $arr[$j + 1]) {
                $tmp = $arr[$j];
                $arr[$j] = $arr[$j + 1];
                $arr[$j + 1] = $tmp;
            }
            echo implode(' ', $arr) . PHP_EOL;
        }
    }
    return $arr;
}

bubbleSort([3,2,5,7,6,18,2]);
// [2, 2, 3, 5, 6, 7, 18]

JS版本

function bubbleSort(arr) {
    let length = arr.length

    if (length < 2) {
        return arr
    }

    for (var i in arr) {
        let j = 0
        for (; j < length - i - 1; j++) {
            if (arr[j] > arr[j + 1]) {
                let tmp = arr[j]
                arr[j] = arr[j + 1]
                arr[j + 1] = tmp
            }
        }
    }

    return arr
}

bubbleSort([3,2,5,7,6,18,2]);
// [2, 2, 3, 5, 6, 7, 18]

相关文章

网友评论

      本文标题:冒泡排序

      本文链接:https://www.haomeiwen.com/subject/ktgogftx.html