快速排序的PHP实现 Quick Sort

快速排序(Quicksort)的PHP实现。

view source
print ?
01 function out_arr($arr) {
02     return implode(', '$arr).'
03 ';
04 }
05  
06 function sort_quick($arr) {
07     ifcount($arr) > 1 ) {     
08         $key $arr[0];
09         $min array();
10         $max array();
11         for ($i = 1; $i count($arr); $i++) {
12             if$arr[$i] > $key) {
13                 $max[] = $arr[$i];
14             else {
15                 $min[] = $arr[$i];
16             }
17         }
18         $min count($min) > 0 ? sort_quick($min) : $min;
19         $max count($max) > 0 ? sort_quick($max) : $max;
20         return array_merge($minarray($key), $max);
21     else {
22         return $arr;
23     }
24 }
25  
26 echo '<pre>';
27 $arr = range(1, 20);
28 shuffle($arr);
29 echo 'ORG : '.out_arr($arr);
30 $ret = sort_quick($arr);
31 echo 'RET : '.out_arr($ret);
32 echo '</pre>';

你可能感兴趣的:(快速排序的PHP实现 Quick Sort)