## Problem Statement for ZigZag 转

WuXueyang

### Problem Statement

A sequence of numbers is called a zig-zag sequence if the differences between successive numbers strictly alternate between positive and negative. The first difference (if one exists) may be either positive or negative. A sequence with fewer than two elements is trivially a zig-zag sequence.

For example, 1,7,4,9,2,5 is a zig-zag sequence because the differences (6,-3,5,-7,3) are alternately positive and negative. In contrast, 1,4,7,2,5 and 1,7,4,5,5 are not zig-zag sequences, the first because its first two differences are positive and the second because its last difference is zero.

Given a sequence of integers, sequence, return the length of the longest subsequence of sequence that is a zig-zag sequence. A subsequence is obtained by deleting some number of elements (possibly zero) from the original sequence, leaving the remaining elements in their original order.

### Definition

 Class: ZigZag Method: longestZigZag Parameters: int[] Returns: int Method signature: int longestZigZag(int[] sequence) (be sure your method is public)

### Constraints

- sequence contains between 1 and 50 elements, inclusive.
- Each element of sequence is between 1 and 1000, inclusive.

### Examples

0)

 ``{ 1, 7, 4, 9, 2, 5 }``
``Returns: 6``
 The entire sequence is a zig-zag sequence.
1)

 ``{ 1, 17, 5, 10, 13, 15, 10, 5, 16, 8 }``
``Returns: 7``
 There are several subsequences that achieve this length. One is 1,17,10,13,10,16,8.
2)

 ``{ 44 }``
``Returns: 1``

3)

 ``{ 1, 2, 3, 4, 5, 6, 7, 8, 9 }``
``Returns: 2``

4)

 ``{ 70, 55, 13, 2, 99, 2, 80, 80, 80, 80, 100, 19, 7, 5, 5, 5, 1000, 32, 32 }``
``Returns: 8``

5)

 ``{ 374, 40, 854, 203, 203, 156, 362, 279, 812, 955, 600, 947, 978, 46, 100, 953, 670, 862, 568, 188, 67, 669, 810, 704, 52, 861, 49, 640, 370, 908, 477, 245, 413, 109, 659, 401, 483, 308, 609, 120, 249, 22, 176, 279, 23, 22, 617, 462, 459, 244 }``
``Returns: 36``

### WuXueyang

[leetcode] ZigZag Conversion

The string"PAYPALISHIRING"is written in a zigzag pattern on a given number of rows like this: (you may want to display this pattern in a fixed font for better legibility) P A H ......

jdflyfly
2014/06/24
72
0
Leetcode_6. Zigzag convertion

6. Zigzag convertion 对输入的字符串做锯齿形变换，并输出新的字符串，所谓zigzag变化如下图所示。 将"ABCDEFGHIJKL"做4行的锯齿变换，新的字符串为：AGBFHLCEIKDJ" 实现一个根据输入字符串...

gexin1023
2018/06/28
0
0
[LeetCode] Zigzag Iterator 之字形迭代器

Given two 1d vectors, implement an iterator to return their elements alternately. For example, given two 1d vectors: v1 = [1, 2]v2 = [3, 4, 5, 6] By calling next repeatedly unti......

2017/12/15
0
0
LeetCode-ZigZag conversion

Zigzag Conversion Solution mind path We can notice that it has a pattern. Every zigzag pattern is composed by a list of structures.As of example 2, Let's write the zigzag positi......

Quan全
2018/07/10
23
0

mmlf
2018/02/05
0
0

cat 命令（文本输出命令） 通常查找出错误日志 cat error.log | grep 'nick' , 这时候我们要输出当前这个日志的前后几行： 显示file文件里匹配nick那行以及上下5行 cat error.log | grep -C ...

xiaolyuh
35分钟前
5
0

42分钟前
5
0
win服务器管理遇到的一系列问题记录

1717197346
49分钟前
6
0
flutter 剪切板 复制粘贴

zdglf
51分钟前
4
0

52分钟前
4
0