用PHP写一个冒泡排序
时间: 2023-05-27 20:02:20 浏览: 87
以下是用 PHP 编写的冒泡排序:
```php
function bubbleSort($arr) {
$n = count($arr);
for ($i = 0; $i < $n; $i++) {
for ($j = 0; $j < $n - $i - 1; $j++) {
if ($arr[$j] > $arr[$j + 1]) {
// 交换 $arr[$j] 和 $arr[$j + 1] 的值
$temp = $arr[$j];
$arr[$j] = $arr[$j + 1];
$arr[$j + 1] = $temp;
}
}
}
return $arr;
}
```
在此函数中,使用双重循环来实现冒泡排序。外层循环控制冒泡排序的次数,内层循环用于比较相邻的元素并交换它们的位置,实现排序的过程。最后返回排好序的数组。
相关问题
用php写一个冒泡排序
以下是用PHP写的冒泡排序示例代码:
```php
<?php
function bubbleSort($arr){
$len = count($arr);
// 外层循环控制需要排序的轮数
for($i=1;$i<$len;$i++){
// 内层循环控制每一轮排序的次数
for($j=0;$j<$len-$i;$j++){
if($arr[$j]>$arr[$j+1]){
// 交换相邻两个元素的位置
$temp = $arr[$j];
$arr[$j] = $arr[$j+1];
$arr[$j+1] = $temp;
}
}
}
return $arr;
}
$arr = array(5,3,8,4,2);
echo "排序前:".implode(',',$arr)."\n";
$arr = bubbleSort($arr);
echo "排序后:".implode(',',$arr)."\n";
?>
```
输出结果:
```
排序前:5,3,8,4,2
排序后:2,3,4,5,8
```
在这个代码中,我们定义了一个 `bubbleSort` 函数来实现冒泡排序。该函数接受一个整数数组作为参数,并返回排序后的数组。
在函数内部,我们使用两个嵌套的循环来实现冒泡排序。外层循环控制需要排序的轮数,内层循环控制每一轮排序的次数。在每一轮排序中,我们比较相邻的两个元素,如果前一个元素比后一个元素大,则交换它们的位置。
最后,我们输出排序前和排序后的数组,以便我们检查排序是否正确完成。
用PHP写一个冒泡排序法
冒泡排序法是一种常用的排序算法,用PHP实现它的基本思想是:从第一个元素开始,把它与其后的元素进行比较,如果它比后面的元素大,就交换位置,然后再比较它与其后的元素,直到最后一个元素,把最大的元素放到最后。然后重复这个过程,直到所有的元素都排好序。
PHP代码实现如下:
<?php
//冒泡排序法
$arr = array(4,2,6,1,3,5);
$len = count($arr);
for ($i=0; $i<$len-1; $i++) {
for ($j=$i+1; $j<$len; $j++) {
if ($arr[$i] > $arr[$j]) {
$tmp = $arr[$i];
$arr[$i] = $arr[$j];
$arr[$j] = $tmp;
}
}
}
print_r($arr);
?>
阅读全文