1. 程式人生 > 實用技巧 >[程式設計題] lc:[674 最長連續遞增序列

[程式設計題] lc:[674 最長連續遞增序列

[程式設計題] lc:674. 最長連續遞增序列

題目描述

給定一個未經排序的整數陣列,找到最長且連續的的遞增序列,並返回該序列的長度。

輸入輸出

思路

Java程式碼

class Solution {
    public int findLengthOfLCIS(int[] nums) {
        //極端條件
        if(nums.length==0 || nums==null) {return 0;}

        int i = 0;
        int j = 1;
        int count = 1;   //每次遞增子序列的計數
        int max = 1;     //記錄最大的子序列個數
        //j指標到陣列頭的時候退出
        while(j<=nums.length-1){
            //如果j指標指向的元素大於i指標指向的元素,就讓i和j後移,記錄當前的最大值。
            if(nums[j]>nums[i]){
                count++;
                i++;
                j++;
                //儲存本次的結果
                max = count>max? count:max;
            }else{
                //如果不遞增了,就重新賦予i j 初始值
                i = j;
                j = i+1;
                count = 1;q
            }
        }
        return max;
    }
}

時間複雜度

最壞O(n)