LeetCode 300最长递增子序列

LeetCode 300最长递增子序列_第1张图片

题目链接:力扣​​​​​​s

 思路:动态归划

定义dp数组:设 dp[i] 是以nums[i]结尾的最大递增子序列的长度

状态转移方程:dp[i]=max{dp[j]}+1,当nums[i]>nums[j],0<=j

出口: dp[0]=1

LeetCode 300最长递增子序列_第2张图片

class Solution {
public:
    int lengthOfLIS(vector& nums) {
vectordp(nums.size());

//注意nums为0的情况
if(nums.size()==1)
return 1;
dp[0]=1;
int max_length=0;
for(int i=1;i

你可能感兴趣的:(#,动态规划,算法,leetcode,职场和发展)