首頁 > 後端開發 > php教程 > PHP快速排序问题

PHP快速排序问题

WBOY
發布: 2016-06-23 13:31:26
原創
961 人瀏覽過

$arr=array(4,1,9,2,3);function quick($arr){	if ( count($arr)<=1) {		return $arr;	}	for ($i=1; $i < count($arr); $i++) { 		if ($arr[0]<$arr[$i]) {			$right[]=$arr[$i];		}else{			$left[]=$arr[$i];		}	}	$right1=quick($right);	$left1=quick($left);	return array_merge($left1,array($arr[0]),$right1);}var_dump(quick($arr));
登入後複製

各位朋友好,小弟用PHP实现一个快速排序的问题。最后得出的的结果始终是NULL,百思不得其解。请开导,谢谢!


回复讨论(解决方案)

$arr=array(4,1,9,2,3);print_r(quick($arr));function quick($arr){    if ( count($arr)<=1) {         return $arr;    }    $left = array();    $righe = array();    for ($i=1; $i < count($arr); $i++) {         if ($arr[0]<$arr[$i]) {            $right[]=$arr[$i];        }else{            $left[]=$arr[$i];        }    }    $right1=quick($right);    $left1=quick($left);    return array_merge($left1,array($arr[0]),$right1);}
登入後複製
Array(    [0] => 1    [1] => 2    [2] => 3    [3] => 4    [4] => 9)
登入後複製
自己看看区别在哪里

如果 $left 和 $right 没有初值的话
你想想会是什么结果

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板