給你一個整數陣列 nums ,找到其中最長嚴格遞增子序列的長度,
子序列是由陣列派生而來的序列,洗掉(或不洗掉)陣列中的元素而不改變其余元素的順序,例如,[3,6,2,7] 是陣列 [0,3,1,6,2,2,7] 的子序列,
來源:力扣(LeetCode)
鏈接:https://leetcode-cn.com/problems/longest-increasing-subsequence
著作權歸領扣網路所有,商業轉載請聯系官方授權,非商業轉載請注明出處,
class Solution {
public int lengthOfLIS(int[] nums) {
int len = nums.length;
int[] target = new int[len];
for(int i=0;i<len;i++){
target[i]=1;
}
for(int i=0;i<len;i++){
for(int j=i-1;j>=0;j--){
if(nums[i]>nums[j]){
target[i] = Math.max(target[i],target[j]+1);
}
}
}
int res = 0;
for(int i=0;i<len;i++){
res = Math.max(res,target[i]);
}
return res;
}
}
使用當前的 數字和前面的幾個數字進行比較 如果當前的比之前的大
就判斷當前的 target里面的內容是否比 當前的大
再進行一次遍歷 找出最小值

轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/355259.html
標籤:其他
上一篇:程式員之職業生涯的第8個階段
