我有这样一个系列:14,13,12,14,15,18,20,17,15,19,22,24,22,18,15,14,17,...如果我使用这些值作为Y坐标在X-Y轴上的图表上绘制这些点,那么您会看到在20和24处有峰值。我想找到系列中的所有这些峰我试过:$a=array(14,13,12,14,15,18,20,17,15,19,22,24,22,18,15,14,17);rsort($a);echo$a[0];echo$a[1];但这并没有给我在图表上看到的两个峰值。上面代码的结果是24和22。但是图中的峰值是由20和24组成的...有没有一种方法可以检测阵列以确定整个系列中的峰值?我
情况:我有一个包含可变数量元素的多维数组。例如array(N){0=>array(3){...},1=>array(8){...},2=>array(1){...},...M=>array(12){...},...N-1=>array(7){...}}我想找出这个子数组中元素的最大数量(在上面的例子中,它是12)。一个简单的解决方案是O(N)线性搜索。$max){$max=count($child);}}return$max;}但是,我不禁想知道是否有一些巧妙的技巧可以优化此查找。所以我的问题是一个由两部分组成的问题(尽管对任何一部分的回答都可以解决):是否有一种算法可以比O(N)更快