温馨提示×

php冒泡排序算法代码怎么写

PHP
小亿
84
2024-01-19 14:01:09
栏目: 编程语言

下面是一个使用PHP语言实现冒泡排序算法的示例代码:

function bubbleSort($arr) {
    $len = count($arr);
    for ($i = 0; $i < $len - 1; $i++) {
        for ($j = 0; $j < $len - $i - 1; $j++) {
            if ($arr[$j] > $arr[$j + 1]) {
                // 交换位置
                $temp = $arr[$j];
                $arr[$j] = $arr[$j + 1];
                $arr[$j + 1] = $temp;
            }
        }
    }
    return $arr;
}

// 测试示例
$nums = array(5, 3, 8, 2, 1, 4);
$sortedNums = bubbleSort($nums);
echo "排序后的数组为:" . implode(", ", $sortedNums);

以上代码中,bubbleSort 函数接受一个数组参数 $arr,并使用冒泡排序算法对其进行排序。在外层循环中,迭代数组元素的个数减去 1 次,用于控制比较的轮数。在内层循环中,迭代剩余未排序部分的元素,如果当前元素比下一个元素大,则交换它们的位置。通过这种方式,每一轮循环都将使得未排序部分的最大元素“冒泡”到末尾。最后,返回排序后的数组。

在上面的示例中,给定的输入数组为 [5, 3, 8, 2, 1, 4]。通过调用 bubbleSort 函数,并将返回的排序后的数组输出到屏幕上,可以得到排序后的结果:1, 2, 3, 4, 5, 8

0