复制代码代码如下所示:
< PHP

*快速排序排序
*
**

Function sort_quick ($arrData) {
如果(空(美元arrdata)| |!is_array($ arrdata))返回false;

旗arrdata美元美元= { 0 };
$ len =计数($ arrdata)- 1;
如果返回arrdata美元($ len = = 0); / /如果数组只有一个数据,直接返回

arrleft美元=阵();
arrright美元=阵();
len_l = 0美元;
len_r = 0美元;
($ i = 1;$ i;
如果($ arrdata { $我} < $旗){
arrleft len_l } = {美元美元美元美元arrdata {我}; / /左小于
len_l美元+ +;
{人}
arrright len_r } = {美元美元美元美元arrdata {我}; / /大于或等于正确的地方
len_r美元+ +;
}
}

组合数组
arrresult美元=阵();
如果($ len_l){
arrleft = sort_quick美元(美元arrleft);
为($我= 0;$i <= 1美元len_l美元;i++){
{ } =我arrresult美元美元美元美元arrleft {我};
}
}
arrresult美元美元美元len_l } = {旗;
len_l美元+ +;
如果($ len_r){
arrright = sort_quick美元(美元arrright);
为($我= 0;$i <= 1美元len_r美元;i++){
arrresult len_l } = {美元美元美元美元arrright {我};
len_l美元+ +;
}
}
回声= =为旗帜========================================== ;

左:
右:
返回

返回的arrresult;
}
/ / $列表=阵列(4,3,2,1,5,7,3,7);
$列表=阵列(4,51,6,73,2,5,9,33,50,3,4,6,1,4,67);
$列表= sort_quick($列表);
回声;print_r($列表);