leetcode 动态规划类型题
Posted dreamcatcher-zp
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了leetcode 动态规划类型题相关的知识,希望对你有一定的参考价值。
1,Triangle
1 int mininumTotal(vector<vector<int>>& triangle) { 2 for (int i = triangle.size() - 2; i >= 0; --i) { 3 for (int j = 0; j < i + 1; ++j) { 4 // 从下往上依次保存当前路径的最小值,上层只会用到下层的最小值 5 triangle[i][j] += min(triangle[i + 1][j], triangle[i + 1][j + 1]); 6 } 7 } 8 return triangle[0][0]; 9 }
2,Maximum SubArray
1 /* 2 * 状态转移方程为:f[j] = max{ f[j-1] + S[j],S[j] },其中 1 <= j <= n 3 * target = max{ f[j] },其中 1 <= j <= n 4 */ 5 int maxArray(vector<int>& nums) { 6 int n = nums.size(); 7 vector<int> dp(n + 1); 8 dp[0] = 0; 9 for (int i = 0; i < n; ++i) { 10 dp[i + 1] = max(dp[i] + nums[i], nums[i]); 11 } 12 return *max_element(dp.begin(), dp.end());
3,
以上是关于leetcode 动态规划类型题的主要内容,如果未能解决你的问题,请参考以下文章