120. Triangle
来源:互联网 发布:公司数据库 编辑:程序博客网 时间:2024/06/06 14:16
120. Triangle
题目:
Given a triangle, find the minimum path sum from top to bottom. Each step you may move to adjacent numbers on the row below.
For example, given the following triangle[ [2], [3,4], [6,5,7], [4,1,8,3]]
The minimum path sum from top to bottom is 11 (i.e., 2 + 3 + 5 + 1 = 11).
代码如下:
class Solution {public: int minimumTotal(vector<vector<int>>& triangle) { vector<int> len(triangle.back()); int s = triangle.size(); for (int i = s - 2; i >= 0; i--) { for (int j = 0; j <= i; j++) { len[j] = triangle[i][j] + min(len[j], len[j + 1]); } } return len[0]; }};
解题思路:
- 经分析可得,要求从顶部到底部的最短路径,也即从底部到顶部的最短路径,此问题可以分解为多个子问题:每一层中某个点的值加上一层到顶部的最小值;
- 由于只能走改点相邻的点则,只需比较该点(triangle[i][j])上一层 len[j] 和 len[j + 1] 的大小即可,并遍历第 i 行;
- 重复这个过程即可。
阅读全文
0 0
- 120. Triangle
- 120. Triangle
- 120. Triangle
- 120. Triangle
- 120. Triangle
- 120. Triangle
- 120. Triangle
- 120.Triangle
- 120. Triangle
- 120. Triangle
- 120. Triangle
- 120. Triangle
- 120. Triangle
- 120. Triangle
- 120.Triangle
- 120. Triangle
- 120. Triangle
- 120. Triangle
- List 四种遍历方法测试
- Windows中,win10开机界面,显示的图片存放地址
- 二叉树
- tensorflow:上下文管理器 与 name_scope, variable_scope
- 《使用Python进行自然语言处理》学习笔记三
- 120. Triangle
- Spring Boot 集成Mybatis实现主从(多数据源)分离方案
- RC4加密
- SSE,MSE,RMSE,R-square
- Hive 分区操作
- LeetCode ( Populating Next Right Pointers in Each Node II)
- org.hibernate.StaleObjectStateException
- 《使用Python进行自然语言处理》学习笔记四
- Bash scripts-II