300. 最長上公升子串行
給定乙個無序的整數陣列,找到其中最長上公升子串行的長度。
示例:
輸入:[10,9,2,5,3,7,101,18]
輸出:4解釋:最長的上公升子串行是[2,3,7,101],
它的長度是4
思路:動態規劃
//f[i]表示從第乙個數字開始算,以nums[i]結尾的最大上公升子串行
//f[i]=max(f[i],f[j]+1) w[i]>w[j]
#define max(a,b) ((a)>(b)?(a):(b))
int lengthoflis(int* nums, int numssize)}}
//找到以nums[i]結尾的最大長度
int mx=f[0];
for(int i=0;i優化:
//f[i]表示從第乙個數字開始算,以nums[i]結尾的最大上公升子串行
//f[i]=max(f[i],f[j]+1) w[i]>w[j]
#define max(a,b) ((a)>(b)?(a):(b))
int lengthoflis(int* nums, int numssize)
}mx=max(mx,f[i]); //順便求出最大的值
}return mx;
}
力扣LeetCode 300 最長上公升子串行
給定乙個無序的整數陣列,找到其中最長上公升子串行的長度。示例 輸入 10,9,2,5,3,7,101,18 輸出 4 解釋 最長的上公升子串行是 2,3,7,101 它的長度是 4。說明 可能會有多種最長上公升子串行的組合,你只需要輸出對應的長度即可。你演算法的時間複雜度應該為 o n2 高階 你能...
力扣300 最長上公升子串行(有點難)
題目 給定乙個無序的整數陣列,找到其中最長上公升子串行的長度。示例 輸入 10,9,2,5,3,7,101,18 輸出 4 解釋 最長的上公升子串行是 2,3,7,101 它的長度是 4。思路 題目中要我們求長度最長的遞增子串行,沒要求子串行必須連續。假設dp i 表示以第i個數字為結尾的最長上公升...
300 最長上公升子串行
給定乙個無序的整數陣列,找到其中最長上公升子串行的長度。示例 輸入 10,9,2,5,3,7,101,18 輸出 4 解釋 最長的上公升子串行是 2,3,7,101 它的長度是4。說明 高階 你能將演算法的時間複雜度降低到 o n log n 嗎?思路 遍歷一遍給定陣列,維護乙個陣列dp,dp i ...