PHP冒泡排序
PHP冒泡排序
<?php
//产生10个1到100的随机数
for ($i = 0; $i < 10; $i++){
$array[$i] = rand(1, 100);
}
/*
* 冒泡排序
*/
function bubblesort($array, $count){
if ($count == 0){//排序结束
return $array;
}
for ($i = 0; $i < $count-1; $i++){
//将两个相邻的随机数做比较,
//当第$i个随机数大于第$i+1个随机数时,
//互换它们的位置
if ($array[$i] > $array[$i+1]){
$tmp = $array[$i+1];
$array[$i+1] = $array[$i];
$array[$i] = $tmp;
}
}
//PHP中递归需要return,否则只能得到null
return bubblesort($array, $count-1);
}
$count = count($array);
$new_array = bubblesort($array, $count);
var_dump($new_array);
PHP递归时需要return,如下述代码中
return bubblesort($array, $count-1);
改为
bubblesort($array, $count-1);
$new_array就接不到值,即结果为null