更新时间:2017-07-26 来源:黑马程序员PHP培训学院 浏览量:
冒泡排序
基本思想:
案例说明:
<?php
//简单的
$arr=array(0,5,-1);
//这是一个中间变量
$temp=0;
//我们要把数组,从小到大
//外层循环
for($i=0;$i<count($arr)-1;$i++){
for($j=0;$j<count($arr)-1-$i;$j++){
//说明前面的数比后面的数大,就要交换
if($arr[$j]>$arr[$j+1]){
$temp=$arr[$j];
$arr[$j]=$arr[$j+1];
$arr[$j+1]=$temp;
}
}
}
//输出
print_r($arr);
?>
为了更好使用排序,我们将其封装成一个函数:代码如下 :
<?php
//简单的
//现在我们把冒泡法封装成函数,利用以后使用
function bubbleSort(&$myarr){
//这是一个中间变量
$temp=0;
//我们要把数组,从小到大
//外层循环
for($i=0;$i<count($myarr)-1;$i++){
for($j=0;$j<count($myarr)-1-$i;$j++){
//说明前面的数比后面的数大,就要交换
if($myarr[$j]>$myarr[$j+1]){
$temp=$myarr[$j];
$myarr[$j]=$myarr[$j+1];
$myarr[$j+1]=$temp;
}
}
}
echo "<br/>函数中的myarr数组";
print_r($myarr);
}
$arr=array(0,5,-1);
//使用函数去排序
bubbleSort($arr);
//输出
print_r($arr);
?>
☞ 从上面的案例我们可以看出
* 数组默认传递的是值,不是地址