<?php
class quick{
//快速排序
public function quick_sort($arr){
$base = $arr[0];
$left_array = array();
$right_array = array();
for($i = 1;$i<count($arr);$i++){
if($base>$arr[$i]){
$left_array[] = $arr[$i];
}else{
$right_array[] = $arr[$i];
}
}
$left_array = quick_sort($left_array);
$right_array = quick_sort($right_array);
return array_merge($left_array,array($base),$right_array);
}
}
$test_arr =array(23,12,3,88,16,45,2,66);
$sort = new quick();
$result = $sort->quick_sort($test_arr);
var_dump($result);
?>
打印顯示$left_array = quick_sort($left_array);這里開始出錯(cuò), Call to undefined function quick_sort()
6 回答

MYYA
TA貢獻(xiàn)1868條經(jīng)驗(yàn) 獲得超4個(gè)贊
<?php
class quick {
//快速排序
public function quick_sort($arr){
if(count($arr) <= 1){
return $arr;
}
$base = $arr[0];
$left_array = $right_array = [];
for ($i = 1; $i < count($arr); $i++) {
if($base > $arr[$i]){
$left_array[] = $arr[$i];
} else {
$right_array[] = $arr[$i];
}
}
$left_array = $this->quick_sort($left_array);
$right_array = $this->quick_sort($right_array);
return array_merge($left_array, [$base], $right_array);
}
}
$test_arr = [23,12,3,88,16,45,2,66];
$sort = new quick();
$result = $sort->quick_sort($test_arr);
var_dump($result);
幫你修正了一下

紫衣仙女
TA貢獻(xiàn)1839條經(jīng)驗(yàn) 獲得超15個(gè)贊
在類文件中引用類中的方法或?qū)傩詴r(shí),都需要用$this-> 指向,或者類中的方法or屬性定義為static 在同類中用self::調(diào)用

慕田峪9158850
TA貢獻(xiàn)1794條經(jīng)驗(yàn) 獲得超7個(gè)贊
$left_array = quick_sort($left_array);
$right_array = quick_sort($right_array);
改為
$left_array = $this->quick_sort($left_array);
$right_array = $this->quick_sort($right_array);
- 6 回答
- 0 關(guān)注
- 912 瀏覽
添加回答
舉報(bào)
0/150
提交
取消