Codility'磁带均衡'任务(0%表现)

时间:2018-02-09 17:20:25

标签: php performance task

有谁能告诉我为什么这个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;
   }

1 个答案:

答案 0 :(得分:0)

您正在排序哪个是O(NlogN)。 如果在每次迭代时保持最小差异,则无需排序: mindiff = min(min, diff)你可以简单地返回差异。