3
$data = array(5,0,15,20,22,14,13,15,12,22,40,25);
您好,我要遍歷上面的數據點,並找到基於一系列轉折點在陣列數據(高和低)的轉折點。
到目前爲止我處理它的方式是簡單地取$ array [$ i] - $ array [$ i-1],如果絕對差值大於範圍 - 我將它作爲轉折點 。然而 - 邏輯是有缺陷的,好像它略微上升然後回落 - 它打破了循環。
三個降值應該已經足以讓X,一個轉折向下,而是因爲他們單獨不符合範圍 - 他們被丟棄。
任何解決方案?
if($diff >= 0)
{
$diff_up = $diff_up + $diff;
}
else
{
$diff_down = $diff_down + abs($diff);
}
if((($diff_up-$diff_down) >=$range) && ($pivot_type != "UP"))
{
echo "Pivot UP at : ".$current;
break;
}
else if((($diff_down-$diff_up) >$range) && ($pivot_type != "DOWN"))
{
echo "Pivot DOWN at : ".$current;
break;
}
莫非你更清楚地說明了「轉折點」的標準T「?你很可能需要一個稍微複雜的算法。 –
在數組中,轉折點在哪裏?向我們展示一個預期的輸出數組 – Andreas
@Kylon Tyner - 基本上圖形開始向上或向下移動的點,給定範圍例如:20 –