leetcode 674-最长连续递增序列

/**
 * 简单题难度:
 * 给定一个未经排序的整数数组,找到最长且 连续递增的子序列,并返回该序列的长度。
* 连续递增的子序列 可以由两个下标 l 和 r(l < r)确定,如果对于每个 l <= i < r,都有 nums[i] < nums[i + 1] ,那么子序列 [nums[l], nums[l + 1], ..., nums[r - 1], nums[r]] 就是连续递增子序列。
来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/longest-continuous-increasing-subsequence
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
 */

/**
 * @author cookie
 * @param {number[]} number number数组
 * @return {number}
 */
 function findLengthOfLCIS(nums) {
    
    
    //  如果nums的长度比1小, 那么, 就直接返回, 因为最长就是自己. 
    if(nums.length <=1) return nums.length
    // 如果nums的长度比1大, 那么就需要判断了. 
    // 1. 先进行排序,排完序后, 再判断. 

    let maxLength =0, count = 1
    for (let  i= 0; i < nums.length; i++) {
    
    
    
        if(nums[i] <  nums[i + 1 ]){
    
    
            count += 1
        }else {
    
    
            count = 1
        }
        maxLength = Math.max(maxLength, count)
        
    }
    return maxLength
 }

 let nums = [1, 9, 10, 8, 70, 20, 09, 11]
 const res = findLengthOfLCIS(nums)
 console.log(res);

猜你喜欢

转载自blog.csdn.net/weixin_40944062/article/details/113105795