300. Longest Increasing Subsequence
public class Main{
public int lengthOfLIS(int[] nums){
int length = nums.length;
int[] dp = new int[length];
dp[0] = 1;
int res = 1;
for(int i=1;i<length;i++){
dp[i] = 1;
for(int j=0;j<i;j++){
if(nums[i]>nums[j]){
dp[i] = (dp[j]+1>dp[i])? dp[j]+1:dp[i];
}
}
res = Arrays.stream(dp).max().getAsInt();
}
for(int i=0;i<length;i++){
System.out.println(dp[i]);
}
return res;
}
public static void main(String[] args) {
Main mm = new Main();
int[] nums = {4,10,4,3,8,9};
int res = mm.lengthOfLIS(nums);
System.out.println("result is " + res);
int res2 = mm.answer(nums);
System.out.println("result2 is " + res2);
Arrays.sort(nums);
int mmax = nums[nums.length-1];
int mmax2 = Arrays.stream(nums).max().getAsInt();
Integer[] numbers = {4,10,4,3,8,9};
int mmax1 = (int)Collections.max(Arrays.asList(numbers));
}
}