Leetcode053--找到分支最小路径和
来源:互联网 发布:15寸mac魔兽世界 编辑:程序博客网 时间:2024/06/06 13:58
一、原题
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 is11(i.e., 2 + 3 + 5 + 1 = 11).
Note:
Bonus point if you are able to do this using only O(n) extra space, where n is the total number of rows in the triangle.
二、中文
求最小值,从上到下的分支可以任意选择
三、举例
四、思路
还是动态规划的思想,只不过这次是从下往上开始的,使用的是二维数组
五、程序
import java.util.*;public class Solution { public int minimumTotal(ArrayList<ArrayList<Integer>> triangle) { //也是通过动态规划的方式 int row = triangle.size(); int col = triangle.get(row-1).size(); int d[][] = new int[row][col]; //先将最后一行填满 for(int i = 0; i < col; i++){ d[row-1][i] = triangle.get(row-1).get(i); } //从下往上选取最小的依次填充 for(int i = row-2; i >= 0; i--){ //获得一行 ArrayList<Integer> l = triangle.get(i); for(int j = 0;j<l.size();j++){ d[i][j] = l.get(j) + Math.min(d[i+1][j], d[i+1][j+1]); } } return d[0][0]; }}
阅读全文
1 0
- Leetcode053--找到分支最小路径和
- 题目:最小路径和
- LintCode -- 最小路径和
- LintCode:最小路径和
- LintCode-最小路径和
- 最小路径和
- 最小路径和
- 最小路径和
- Leetcode029--最小路径和
- 最小路径和
- 最小路径和
- 110-最小路径和
- 矩阵最小路径和
- 最小路径和
- 最小路径和-LintCode
- lintcode --最小路径和
- 64.最小路径和
- 矩阵最小路径和
- Node.js 文件系统
- 欢迎使用CSDN-markdown编辑器
- 用百度地图api计算两个地方的距离
- Copy List with Random Pointer
- [leetcode]538. Convert BST to Greater Tree
- Leetcode053--找到分支最小路径和
- C++笔试题
- 每天一个 Linux 命令(41):ps命令
- C++中的inline关键字用法介绍
- (转)(笔记)screen tearing
- 宏定义函数和普通函数
- 设计模式---------单例模式
- 机器学习学习中评价模型好坏的标准
- 最小生成树