Wiggle Subsequence

Medium

Topics
ArrayDynamic ProgrammingGreedy

A wiggle sequence has strictly alternating positive and negative differences between successive numbers. Given nums, return the length of the longest wiggle subsequence.

Example 1

Input:  nums = [1,7,4,9,2,5]
Output: 6

Example 2

Input:  nums = [1,17,5,10,13,15,10,5,16,8]
Output: 7

Example 3

Input:  nums = [1,2,3,4,5]
Output: 2

Constraints

  • 1 <= nums.length <= 1000
  • 0 <= nums[i] <= 1000
Run ⌘' · Submit ⌘⏎