https://leetcode.cn/problems/longest-increasing-subsequence/description/
class Solution {
public int lengthOfLIS(int[] nums) {
// f[i]表示以第i个数为结尾的最长严格上升子序列
// 以倒数第二个数是多少来划分子集
// f[i] = max(f[i-1],f[i-2],...f[1])+1;
// f[1]=1;
if(nums.length==1)return 1;
int[] f=new int[nums.length+1];
f[1]=1;
int res=0;
for(int i=2;i<=nums.length;i++)
{
int max=0;
for(int j=1;j<=i-1;j++)
if(nums[j-1]<nums[i-1]) // 这里nums和f下标差一位,需要偏移
max=Math.max(f[j],max);
f[i]=max+1;
res=Math.max(res,f[i]);
}
return res;
}
}
标签:nums,300,递增,int,length,序列,leetcode From: https://www.cnblogs.com/lxl-233/p/18401627