mirror of
https://github.com/youngyangyang04/leetcode-master.git
synced 2025-07-08 00:43:04 +08:00
Merge pull request #958 from Tiffany-yuan/master
update: 0376.摆动序列 js动态规划解法
This commit is contained in:
@ -261,6 +261,7 @@ func wiggleMaxLength(nums []int) int {
|
|||||||
```
|
```
|
||||||
|
|
||||||
### Javascript
|
### Javascript
|
||||||
|
**贪心**
|
||||||
```Javascript
|
```Javascript
|
||||||
var wiggleMaxLength = function(nums) {
|
var wiggleMaxLength = function(nums) {
|
||||||
if(nums.length <= 1) return nums.length
|
if(nums.length <= 1) return nums.length
|
||||||
@ -277,6 +278,25 @@ var wiggleMaxLength = function(nums) {
|
|||||||
return result
|
return result
|
||||||
};
|
};
|
||||||
```
|
```
|
||||||
|
**动态规划**
|
||||||
|
```Javascript
|
||||||
|
var wiggleMaxLength = function(nums) {
|
||||||
|
if (nums.length === 1) return 1;
|
||||||
|
// 考虑前i个数,当第i个值作为峰谷时的情况(则第i-1是峰顶)
|
||||||
|
let down = 1;
|
||||||
|
// 考虑前i个数,当第i个值作为峰顶时的情况(则第i-1是峰谷)
|
||||||
|
let up = 1;
|
||||||
|
for (let i = 1; i < nums.length; i++) {
|
||||||
|
if (nums[i] < nums[i - 1]) {
|
||||||
|
down = Math.max(up + 1, down);
|
||||||
|
}
|
||||||
|
if (nums[i] > nums[i - 1]) {
|
||||||
|
up = Math.max(down + 1, up)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return Math.max(down, up);
|
||||||
|
};
|
||||||
|
```
|
||||||
|
|
||||||
-----------------------
|
-----------------------
|
||||||
<div align="center"><img src=https://code-thinking.cdn.bcebos.com/pics/01二维码一.jpg width=500> </img></div>
|
<div align="center"><img src=https://code-thinking.cdn.bcebos.com/pics/01二维码一.jpg width=500> </img></div>
|
||||||
|
Reference in New Issue
Block a user