参看我博客中的动态规划,里面详细解释了…谢谢呀
class Solution {
public:
int lengthOfLIS(vector<int>& nums) {
int len=nums.size();
if(len==0) return 0;
auto f=vector<int>(len,1);//状态数组,初始化的时候全部初始化为1
//边界处理
for(int i=1;i<len;i++){
for(int j=0;j<i;j++){
if(nums[j]<nums[i]) f[i]=max(f[i],f[j]+1);
}
}
//c11直接库函数返回数组元素的最大值
return *max_element(f.begin(),f.end());
}
};