Leetcode 120. Triangle
給定一個三角形,找到從頂端到低端的最小路徑和。每一次可以移動到下一排的相鄰的數。能否實現只需要O(n)空間複雜度的演算法,n為三角的行數。
思路:對於每一個點來說,以其為端點的路徑要麼是從左上點下來的,要麼是從右上點下來的,所以以這點為端點的路徑和sum[i][j]=min(sum[i-1][j-1], sum[i-1][j])+這點值,採用動規的方法來做,從三角形下面往上動規就不用考慮邊界了。
class Solution {
public:
int minimumTotal(vector<vector<int>>& triangle) {
if(triangle.empty() || triangle[0].empty()) return 0;
int n=triangle.size();
for(int i=n-2; i>=0; --i)
{
for(int j=0; j<triangle[i].size(); ++j)
{
triangle[i][j]=min(triangle[i+1][j],triangle[i+1][j+1])+triangle[i][j];
}
}
return triangle[0][0];
}
};
相關文章
- [LeetCode] 120. TriangleLeetCode
- Leetcode 611 javascript Valid Triangle NumberLeetCodeJavaScript
- 976. Largest Perimeter Triangle(Leetcode每日一題-2020.11.29)LeetCode每日一題
- [Leetcode]120.三角形路徑最小和LeetCode
- 【Leetcode】120.三角形最小路徑和LeetCode
- 119 Pascal's Triangle II
- Windows下編譯TriangleWindows編譯
- LINUX下編譯TriangleLinux編譯
- 【博弈論】HDU - 7216 Triangle GameGAM
- 【Lintcode】359. Make Equilateral TriangleUI
- CF1991F Triangle Formation 題解ORM
- ZOJ Monthly, January 2019 - A Little Sub and Pascal's Triangle(找規律)
- A C++ half-edge data structure for a triangle mesh with no external dependencies whatsoeveC++Struct
- 2020ICPC·小米 網路選拔賽熱身賽K-Random Point in Trianglerandom
- 【LeetCode】如何學習LeetCode?LeetCode
- leetcodeLeetCode
- LeetCode in actionLeetCode
- leetcode 238LeetCode
- LeetCode 164 最大間距 HERODING的LeetCode之路LeetCode
- LeetCode 143 重排連結串列 HERODING的LeetCode之路LeetCode
- LeetCode問題LeetCode
- 【LeetCode】Jewels and StonesLeetCode
- Leetcode 513 javascriptLeetCodeJavaScript
- LeetCode 162 JavascriptLeetCodeJavaScript
- Leetcode 921 JavascriptLeetCodeJavaScript
- [Leetcode] Edit DistanceLeetCode
- LeetCode 克隆圖LeetCode
- LeetCode #378 JavaScriptLeetCodeJavaScript
- LeetCode 747 JavaScriptLeetCodeJavaScript
- Leetcode725LeetCode
- LeetCode 53 JSLeetCodeJS
- LeetCode 50 JSLeetCodeJS
- Leetcode03LeetCode
- LeetCode 799 JavaScriptLeetCodeJavaScript
- leetcode690LeetCode
- [LeetCode] Group AnagramLeetCode
- [LeetCode] Rotate StringLeetCode
- LeetCode 283 jsLeetCodeJS
- Leetcode #463 JavascriptLeetCodeJavaScript