mirror of
https://github.com/youngyangyang04/leetcode-master.git
synced 2025-07-09 02:53:31 +08:00
更新 0376.摆动序列 排版格式修正
This commit is contained in:
@ -33,11 +33,13 @@
|
||||
- 输入: [1,2,3,4,5,6,7,8,9]
|
||||
- 输出: 2
|
||||
|
||||
# 视频讲解
|
||||
## 算法公开课
|
||||
|
||||
**《代码随想录》算法视频公开课:[贪心算法,寻找摆动有细节!| LeetCode:376.摆动序列](https://www.bilibili.com/video/BV17M411b7NS),相信结合视频在看本篇题解,更有助于大家对本题的理解**。
|
||||
**[《代码随想录》算法视频公开课](https://programmercarl.com/other/gongkaike.html):[贪心算法,寻找摆动有细节!| LeetCode:376.摆动序列](https://www.bilibili.com/video/BV17M411b7NS),相信结合视频在看本篇题解,更有助于大家对本题的理解**。
|
||||
|
||||
## 思路 1(贪心解法)
|
||||
## 思路
|
||||
|
||||
### 思路 1(贪心解法)
|
||||
|
||||
本题要求通过从原始序列中删除一些(也可以不删除)元素来获得子序列,剩下的元素保持其原始顺序。
|
||||
|
||||
@ -69,7 +71,7 @@
|
||||
2. 情况二:数组首尾两端
|
||||
3. 情况三:单调坡中有平坡
|
||||
|
||||
### 情况一:上下坡中有平坡
|
||||
#### 情况一:上下坡中有平坡
|
||||
|
||||
例如 [1,2,2,2,1]这样的数组,如图:
|
||||
|
||||
@ -87,7 +89,7 @@
|
||||
|
||||
所以我们记录峰值的条件应该是: `(preDiff <= 0 && curDiff > 0) || (preDiff >= 0 && curDiff < 0)`,为什么这里允许 prediff == 0 ,就是为了 上面我说的这种情况。
|
||||
|
||||
### 情况二:数组首尾两端
|
||||
#### 情况二:数组首尾两端
|
||||
|
||||
所以本题统计峰值的时候,数组最左面和最右面如何统计呢?
|
||||
|
||||
@ -142,7 +144,7 @@ public:
|
||||
|
||||
所以此时我们要讨论情况三!
|
||||
|
||||
### 情况三:单调坡度有平坡
|
||||
#### 情况三:单调坡度有平坡
|
||||
|
||||
在版本一中,我们忽略了一种情况,即 如果在一个单调坡度上有平坡,例如[1,2,2,2,3,4],如图:
|
||||
|
||||
@ -187,7 +189,7 @@ public:
|
||||
|
||||

|
||||
|
||||
## 思路 2(动态规划)
|
||||
### 思路 2(动态规划)
|
||||
|
||||
考虑用动态规划的思想来解决这个问题。
|
||||
|
||||
@ -696,4 +698,3 @@ object Solution {
|
||||
<a href="https://programmercarl.com/other/kstar.html" target="_blank">
|
||||
<img src="../pics/网站星球宣传海报.jpg" width="1000"/>
|
||||
</a>
|
||||
|
||||
|
Reference in New Issue
Block a user