波峰波谷陣列

2021-09-14 05:34:25 字數 907 閱讀 1765

如果連續數字之間的差嚴格地在正數和負數之間交替,則數字序列稱為擺動序列。第乙個差(如果存在的話)可能是正數或負數。少於兩個元素的序列也是擺動序列。

例如,[1,7,4,9,2,5]是乙個擺動序列,因為差值(6,-3,5,-7,3)是正負交替出現的。相反,[1,4,7,2,5][1,7,4,5,5]不是擺動序列,第乙個序列是因為它的前兩個差值都是正數,第二個序列是因為它的最後乙個差值為零。

給定乙個整數序列,返回作為擺動序列的最長子序列的長度。 通過從原始序列中刪除一些(也可以不刪除)元素來獲得子串行,剩下的元素保持其原始順序。

示例 1:

輸入:[1,7,4,9,2,5]輸出:6解釋:整個序列均為擺動序列。
示例 2:

輸入:[1,17,5,10,13,15,10,5,16,8]輸出:7解釋:這個序列包含幾個長度為 7 擺動序列,其中乙個可為[1,17,10,13,10,16,8]。
示例 3:

輸入:[1,2,3,4,5,6,7,8,9]輸出:2
class solution

};乙個陣列,比如 2 -1  -2 3   up=1 ---> down=2--->(-1還是比-2大)down=2 ---> up=3

return 3;

利用波峰和波谷為1 來做,比較巧妙解決這個問題

尋找波峰波谷

尋找波峰波谷也就是求極值 極值 data是你的資料,find diff sign diff data 2 1 找到極大值的位置 find diff sign diff data 2 1 找到極小值的位置 data find diff sign diff data 2 1 和 data find di...

趣味演算法 求波峰波谷最大值

給乙個陣列,求它的最大的波峰波谷的落差。舉例 陣列 a 其中 6 和 9 被看做是波峰,2和5則是波谷。d 2,6 4,d 6,5 1,d 5,9 4.則 thus,maxd a 4.想法 波峰不一定是陣列中的最大值,他是趨勢向下的轉折點,波谷也不一定是陣列中的最小值,他是趨勢向上的轉折點。陣列中最...

陣列的波谷

找陣列的波谷 原題 乙個陣列a 1 n 滿足a 1 a 2 a n a n 1 a i 被成為波谷,意味著 a i 1 a i a i 1 請給出乙個演算法,找到陣列中的乙個波谷。o n 的方法,是很直接,有更快的方法麼?分析 這個題目遍歷一遍陣列,顯然就可以找到全部的波谷。時間複雜度o n 空間複...