最长连续递增序列
动态规划
- dp数组定义
i点前连续递增序列的个数 - dp的迭代
- if(nums[i] > nums[i-1]) dp[i] = dp[i-1] + 1;
当i的值大于i-1,dp[i] = dp[i-1] + 1 - dp初始化
全都设置为1
自己认为是一个元素的递增数组
class Solution { public: int findLengthOfLCIS(vector<int>& nums) { if(nums.size()==1) return 1; vector<int> dp(nums.size() ,1); int result = 0; for(int i=1 ; i<nums.size();i++) { if(nums[i] > nums[i-1]) dp[i] = dp[i-1] + 1; if(dp[i]>result) result = dp[i]; } return result; } };
二刷
class Solution { public: int findLengthOfLCIS(vector<int>& nums) { vector<int> dp(nums.size() , 1); int result = 1; for(int i=1 ; i<nums.size() ;i++) { if(nums[i] > nums[i-1]) dp[i] = dp[i-1] + 1; if(dp[i] > result) result = dp[i]; } return result; } };