- 博客(3)
- 收藏
- 关注
原创 动态规划练习 leetcode 300.最长上升子序列
leetcode 300.最长上升子序列 思路:用dp[i]记录当前位置最长的上升子序列长度,每次遍历i之前的数组元素进行比较,如果nums[i] > nums[j],则用变量maxval记录此次遍历最长的上升子序列长度,dp[i] = maxval + 1 class Solution { public: int lengthOfLIS(vector<int>&...
2019-11-10 10:04:15 222
原创 动态规划练习 leetcode 279.完全平方数
leetcode 279.完全平方数 动态转移方程:dp[i] = min(dp[i], dp[i - j * j] + 1) 其中dp[i]初始值为i(最坏情况都由1组成) class Solution { public: int numSquares(int n) { vector<int> dp; dp.push_back(0); ...
2019-11-08 11:04:38 84
原创 动态规划练习 leetcode 264.丑数Ⅱ
leetcode 264.丑数Ⅱ 动态规划 思路:丑数第一个是1,其他都可由前面得到的每个丑数分别乘以2,3,5得到, 关键是丑数序列的递增排序。选用3个指针指向已得到的丑数序列元素,每次新生成的丑数中选取最小的一个加入丑数序列,然后相应的指针后移一位,这样得到的丑数序列就是递增的。 class Solution { public: int nthUglyNumber(int n) { ...
2019-11-08 09:13:37 98
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人