https://leetcode-cn.com/problems/longest-continuous-increasing-subsequence/

    给定一个未经排序的整数数组,找到最长且 连续递增的子序列,并返回该序列的长度。


    解题思路

    • 遍历当前数组,记录当前连连续递增子序列的开始和结束索引,如果当前索引i<=[i-1]就不满足连续递增子序列的判定
    • i<=[i-1]时,开始索引就是当前的i索引
    • 如果 {nums}[l-1]<{nums}[l],则将 {nums}[l-1] 加到 {nums}[l] 的前面,可以得到更长的连续递增序列.
    • 如果 {nums}[r+1]>{nums}[r],则将 {nums}[r+1] 加到 {nums}[r] 的后面,可以得到更长的连续递增序列。
    1. const findLengthOfLCIS = (nums)=>{
    2. let start=0, maxLen = 0
    3. for (let i=0;i<nums.length;i++){
    4. // 在nums[i]<=nums[i-1]时就不是连续递增子序列,start=i就是改变当前开始的索引
    5. if(i>0&&nums[i]<=nums[i-1]){
    6. start = i
    7. }
    8. // i-start+1 计算当前连续递增子序列的长度
    9. maxLen = Math.max(maxLen,i-start+1)
    10. }
    11. return maxLen
    12. }
    13. findLengthOfLCIS([1,3,5,4,7])