300 最長遞增子串行

2022-10-08 22:30:23 字數 838 閱讀 2908

給你乙個整數陣列nums,找到其中最長嚴格遞增子串行的長度。

子串行是由陣列派生而來的序列,刪除(或不刪除)陣列中的元素而不改變其餘元素的順序。例如,[3,6,2,7]是陣列[0,3,1,6,2,2,7]的子串行。

示例 1:

輸入:nums = [10,9,2,5,3,7,101,18]

輸出:4

解釋:最長遞增子串行是 [2,3,7,101],因此長度為 4 。

示例 2:

輸入:nums = [0,1,0,3,2,3]

輸出:4

示例 3:

輸入:nums = [7,7,7,7,7,7,7]

輸出:1

本題是經典的動態規劃問題。詳細步驟已標註在**中。

class

solution

}maxcount =max(maxcount, dp[i]);

}return

maxcount;

}};

/*

* * @param nums

* @return */

var lengthoflis =function(nums)

}maxcount =math.max(maxcount, dp[i]);

}return

maxcount;

};

T300最長遞增子串行

思想 複製子序列問題可以考慮使用dp,而本題 這樣的子串行因為只有乙個序列,所以在定義dp時只需要1個狀態就好了 dp i 表示遍歷到第i個位置上時的最長上公升子串行的長度 base case dp i 1 每個元素自身都為1個上公升子串行 狀態轉移方程 if nums i nums j dp i ...

LeetCode 300 最長遞增子串行

300.最長遞增子串行 我們記狀態 dp i dp i dp i 表示以第 i ii 個元素結尾的最長上公升子串行的長度,那麼專一方程就可以定義為 dp i m ax d p j 1 0 j ndnu ms j ms i dp i max dp j 1 0 leq jdp i max dp j 1 ...

LeetCode300 最長遞增子串行

題目鏈結 題目描述 給你乙個整數陣列 nums 找到其中最長嚴格遞增子串行的長度。子串行是由陣列派生而來的序列,刪除 或不刪除 陣列中的元素而不改變其餘元素的順序。例如,3,6,2,7 是陣列 0,3,1,6,2,2,7 的子串行。示例 輸入 nums 10,9,2,5,3,7,101,18 輸出 ...