public static void main(String[] args) {
int[] arr = {1,5,3,7,9,8};
int[] result = maxLISarr(arr);
for (int i = 0; i < result.length; i++) {
System.out.println(result[i]);
}
}
private static int[] maxLISarr(int[] arr){
int[]count = new int[arr.length];
for (int i = 0; i < count.length; i++) {
count[i] = 1;
}
int preValue = arr[0];
for (int i =1;i<arr.length;i++){
if(preValue<arr[i]){
count[i] = count[i-1]+1;
}
preValue = arr[i];
}
int countMaxValue = count[0];
int countMaxIndex = 0;
for (int i = 0; i < count.length; i++) {
if(countMaxValue<count[i]){
countMaxValue = count[i];
countMaxIndex = i;
}
}
int[] result = new int[countMaxValue];
for (int i=countMaxIndex-countMaxValue+1;i<=countMaxIndex;i++){
result[i-(countMaxIndex-countMaxValue+1)] = arr[i];
}
return result;
}