php 使用for循环,实现冒泡排序:_编程笔记

php 使用for循环,实现冒泡排序:

2023-03-05 16:21:12  浏览:632  作者:保利尼奥
function bubbleSort($arr) { $len = count($arr); for ($i = 0; $i < $len - 1; $i++) { for ($j = 0; $j < $len - $i - ...
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;
}

// 示例
$arr = array(3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5);
$result = bubbleSort($arr);
print_r($result);

冒泡排序是一种基本的排序算法,其基本思想是通过比较相邻两个元素的大小,将较大的元素不断地向右移动,最终实现将整个数组排序的目的。

在 PHP 中,可以通过使用 for 循环来实现冒泡排序。具体实现步骤如下:

  1. 首先,定义一个 bubbleSort 函数,该函数接受一个数组作为参数。

  2. 在函数内部,使用 count 函数获取数组的长度,并将其赋值给变量 $len。

  3. 使用两层 for 循环来实现冒泡排序。外层循环控制比较的轮数,循环变量 $i 的初始值为 0,终止条件为 $i < $len - 1,每次循环结束后将 $i 自增 1。

  4. 内层循环控制每轮比较的次数,循环变量 $j 的初始值为 0,终止条件为 $j < $len - $i - 1,每次循环结束后将 $j 自增 1。

  5. 在每轮比较中,使用 if 语句判断相邻两个元素的大小,如果前一个元素比后一个元素大,则交换它们的位置。

  6. 最后,将排序后的数组返回。

评论区

共 0 条评论
  • 这篇文章还没有收到评论,赶紧来抢沙发吧~

【随机内容】

返回顶部