有谁能告诉我为什么这个PHP代码100%正确,但在Codility上的性能是0%?
function solution($A)
{
$N = count($A);
$D = [];
for ($i=1;$i<$N;$i++){
$A2 = array_slice($A,$i); //вторая часть
$sum2 = array_sum($A2);
$sum1 = array_sum($A) - $sum2;
$diff = $sum1 - $sum2;
$D[$i-1] = abs($diff);
}
sort($D);
$result = $D[0];
return $result;
}
答案 0 :(得分:0)
您正在排序哪个是O(NlogN)。
如果在每次迭代时保持最小差异,则无需排序:
mindiff = min(min, diff)
你可以简单地返回差异。