力扣300. 最长上升子序列

class Solution {
    public int lengthOfLIS(int[] nums) {
        if (nums.length == 0) {
            return 0;
        }
        int[] dp = new int[nums.length];
        dp[0] = 1;
        int maxans = 1;
        for (int i = 1; i < nums.length; i++) {
            dp[i] = 1;
            for (int j = 0; j < i; j++) {
                if (nums[i] > nums[j] && dp[j] + 1 > dp[i]) {
                    dp[i] = dp[j] + 1;
                }
            }
            maxans = Math.max(maxans, dp[i]);
        }
        return maxans;
    }
}

今天学习了解决动态规划问题的思路,最近多练习下题吧


版权声明:本文为m0_45311187原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。