leetcode第300题:最长上升子序列 [否]

2020-08-06  本文已影响0人  nlpming
题目描述
image.png
考点
解题思路
解题思路.png
代码实现
class Solution {
public:
    int lengthOfLIS(vector<int>& nums) {
        if(nums.size() <= 1)
            return nums.size();
            
        int res = 1;
        // dp[i]: 表示以nums[i]结尾的,最长上升子序列的长度;
        vector<int> dp(nums.size(), 1);

        for(int i = 1; i < nums.size(); i++){
            for(int j = 0; j < i; j++){
                if(nums[i] > nums[j])
                    dp[i] = max(dp[i], dp[j]+1);
            }

            res = max(res, dp[i]);            
        }

        return res;
    }
};
上一篇 下一篇

猜你喜欢

热点阅读