力扣 300 最長上公升子串行

2021-10-11 04:17:41 字數 801 閱讀 9834

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 ...