计数排序,统计每个数出现的次数
<?php
$a = array(2,13,20,7,5,2,6,5,8,7,6,6,5,5,4,6,8,3);
function countSort($a) {$len = count($a);$t = $arr = array();for($i = 0; $i < $len; $i++) {if(isset($t[$a[$i]])){$t[$a[$i]]++;} else {$t[$a[$i]] = 1;}}$max = max($a);$min = min($a);for($i = $min; $i <= $max; $i++) {if(isset($t[$i])){for($j = 0; $j < $t[$i]; $j++){array_push($arr, $i);}}}return $arr;
}print_r(countSort($a));