更新時間:2017-07-26 來源:黑馬程序員PHP培訓學院 瀏覽量:
冒泡排序
基本思想:
案例說明:
<?php
//簡單的
$arr=array(0,5,-1);
//這是一個中間變量
$temp=0;
//我們要把數(shù)組,從小到大
//外層循環(huán)
for($i=0;$i<count($arr)-1;$i++){
for($j=0;$j<count($arr)-1-$i;$j++){
//說明前面的數(shù)比后面的數(shù)大,就要交換
if($arr[$j]>$arr[$j+1]){
$temp=$arr[$j];
$arr[$j]=$arr[$j+1];
$arr[$j+1]=$temp;
}
}
}
//輸出
print_r($arr);
?>
為了更好使用排序,我們將其封裝成一個函數(shù):代碼如下 :
<?php
//簡單的
//現(xiàn)在我們把冒泡法封裝成函數(shù),利用以后使用
function bubbleSort(&$myarr){
//這是一個中間變量
$temp=0;
//我們要把數(shù)組,從小到大
//外層循環(huán)
for($i=0;$i<count($myarr)-1;$i++){
for($j=0;$j<count($myarr)-1-$i;$j++){
//說明前面的數(shù)比后面的數(shù)大,就要交換
if($myarr[$j]>$myarr[$j+1]){
$temp=$myarr[$j];
$myarr[$j]=$myarr[$j+1];
$myarr[$j+1]=$temp;
}
}
}
echo "<br/>函數(shù)中的myarr數(shù)組";
print_r($myarr);
}
$arr=array(0,5,-1);
//使用函數(shù)去排序
bubbleSort($arr);
//輸出
print_r($arr);
?>
? 從上面的案例我們可以看出
* 數(shù)組默認傳遞的是值,不是地址