[Lintcode]Longest Increasing Continuous Subsequence
来源:互联网 发布:人力资源分析软件 编辑:程序博客网 时间:2024/05/01 00:35
Give an integer array,find the longest increasing continuous subsequence in this array.
An increasing continuous subsequence:
- Can be from right to left or from left to right.
- Indices of the integers in the subsequence should be continuous.
Example
For [5, 4, 2, 1, 3]
, the LICS is [5, 4, 2, 1]
, return 4
.
For [5, 1, 2, 3, 4]
, the LICS is [1, 2, 3, 4]
, return 4
.
设置flag储存当前升序或者降序。当升序序列改为降序时更新最大长度并初始化maxLen。注意此时maxLen长度为2.
题目要求:O(n) time and O(1) extra space.
public class Solution { /** * @param A an array of Integer * @return an integer */ public int longestIncreasingContinuousSubsequence(int[] A) { if(A.length == 0) return 0; int maxLen = 1; int res = 0; int incr = 0; for(int i = 1; i < A.length; i++) { if(A[i] > A[i - 1]) { if(incr == 1 || incr == 0) { maxLen ++; incr = 1; } else { res = Math.max(res, maxLen); maxLen = 2; incr = 1; } } if(A[i] < A[i - 1]) { if(incr == -1 || incr == 0) { maxLen ++; incr = -1; } else { res = Math.max(res, maxLen); maxLen = 2; incr = -1; } } } return Math.max(res, maxLen); }}
0 0
- [Lintcode]Longest Increasing Continuous Subsequence
- Lintcode 389 Longest Increasing Continuous subsequence II
- lintcode:Longest Increasing Continuous subsequence II
- Longest Continuous Increasing Subsequence
- lintcode longest-increasing-continuous-subsequence 最长上升连续子序列
- #397 Longest Increasing Continuous Subsequence
- 674. Longest Continuous Increasing Subsequence
- 674. Longest Continuous Increasing Subsequence
- 674. Longest Continuous Increasing Subsequence
- LeetCode674. Longest Continuous Increasing Subsequence
- 674-Longest Continuous Increasing Subsequence
- 674. Longest Continuous Increasing Subsequence
- 674. Longest Continuous Increasing Subsequence
- 674. Longest Continuous Increasing Subsequence
- leetCode-Longest Continuous Increasing Subsequence
- 674. Longest Continuous Increasing Subsequence
- 397. Longest Increasing Continuous Subsequence
- LWC 49:674. Longest Continuous Increasing Subsequence
- mina 客户端无法得到服务器的返回值
- JDBC基本操作:CRUD样例
- [LintCode]Length of Last Word
- use count of shared_ptr
- [计网学习笔记(1)] 计算机网络概述
- [Lintcode]Longest Increasing Continuous Subsequence
- [Lintcode]Longest Words
- ButterKnife Zelezny 抛出 ArrayIndexOutOfBoundsException
- [Python for Data Anlysis]CH04 Numpy Basics -- Arrays and Vectorized Computation
- Unlocking the Motorola Bootloader (Feb, 2016)
- Full TrustZone exploit for MSM8974
- 编译VirtualNES虚拟红白机
- 3252: 攻略 dfs序+线段树
- 地图之美(二)——帅爆了!!!