/**
* 获取数组中位数.
* */
public static function getMedian($arr)
{
//从小到大排序
sort($arr);
$count = count($arr);
$middle = floor(($count - 1) / 2);
if ($count % 2 == 0) {
//数组偶数个,取中间2个数的平均值
$median = bcdiv(strval($arr[$middle] + $arr[$middle + 1]), '2', 2);
} else {
//数组奇数个,取中间数
$median = $arr[$middle];
}
return $median;
}
网友评论