674. 最长连续递增序列『简单』

题目来源于力扣(LeetCode

一、题目

674. 最长连续递增序列

题目相关标签:数组

注意:数组长度不会超过10000。

二、解题思路

  1. 初始化变量,最大长度与递增元素数量初始值为 1

  2. 遍历数组,从索引 1 开始

  3. 判断当前遍历元素是否大于前一位元素

  4. 若大于,说明为递增序列,则记录长度的变量加 1

  5. 若小于等于,则比较最大长度,并重置记录长度的变量为 1

三、代码实现

public static int findLengthOfLCIS(int[] nums) {
    // 数组长度为 0 的判断
    if (nums.length < 1) {
        return 0;
    }
    // 初始长度为 1
    int maxLen = 1;
    int count = 1;
    for (int i = 1; i < nums.length; i++) {
        // 若当前遍历元素大于前一位元素
        if (nums[i] > nums[i - 1]) {
            count++;
        } else {
            // 更新最大长度
            maxLen = Math.max(maxLen, count);
            // 长度记录重置为 1
            count = 1;
        }
    }
    return Math.max(maxLen, count);
}

四、执行用时

五、部分测试用例

public static void main(String[] args) {
    int[] nums = {1, 3, 5, 4, 7};  // output: 3
//    int[] nums = {2, 2, 2, 2, 2};  // output: 1

    int result = findLengthOfLCIS(nums);
    System.out.println(result);
}
posted @ 2020-07-13 21:22  知音12138  阅读(55)  评论(0编辑  收藏