关闭

LeetCode 64 Minimum Path Sum (数字三角形)

标签: leetcodedp
447人阅读 评论(0) 收藏 举报
分类:

Given a m x n grid filled with non-negative numbers, find a path from top left to bottom right which minimizes the sum of all numbers along its path.

Note: You can only move either down or right at any point in time.


题目链接:https://leetcode.com/problems/minimum-path-sum/

题目分析:基础的动态规划问题,dp[i][j] = max(dp[i - 1][j], dp[i][j - 1]) + grid[i][j]

public class Solution {
    public int minPathSum(int[][] grid) {
        int n = grid.length;
        int m = grid[0].length;
        int[][] dp = new int[n][m];
        for(int i = 0; i < n; i ++) {
            Arrays.fill(dp[i], 0);
        }
        dp[0][0] = grid[0][0];
        for(int i = 0; i < n; i ++) {
            for(int j = 0; j < m; j ++) {
                if(i > 0 && j > 0) {
                    dp[i][j] = Math.min(dp[i - 1][j], dp[i][j - 1]) + grid[i][j];
                }
                else if(i > 0) {
                    dp[i][j] = dp[i - 1][j] + grid[i][j];
                }
                else if(j > 0) {
                    dp[i][j] = dp[i][j - 1] + grid[i][j];
                }
            }
        }
        return dp[n - 1][m - 1];
    }
}


0
0
查看评论
发表评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场

Leetcode:Triangle 数字三角形

Given a triangle, find the minimum path sum from top to bottom. Each step you may move to adjacent n...
  • u012118523
  • u012118523
  • 2014-04-14 17:18
  • 600

【LeetCode-面试算法经典-Java实现】【064-Minimum Path Sum(最小路径和)】

【064-Minimum Path Sum(最小路径和)】【LeetCode-面试算法经典-Java实现】【所有题目目录索引】原题  Given a m x n grid filled with no...
  • DERRANTCM
  • DERRANTCM
  • 2015-08-02 06:05
  • 2293

【LeetCode-面试算法经典-Java实现】【113-Path Sum II(路径和)】

【113-Path Sum II(路径和II)】【LeetCode-面试算法经典-Java实现】【所有题目目录索引】原题  Given a binary tree and a sum, find al...
  • DERRANTCM
  • DERRANTCM
  • 2015-08-12 06:23
  • 2510

蓝桥杯 ALGO-124 算法训练 数字三角形 的两种算法

蓝桥杯练习系统算法训练数字三角形的两种算法
  • wzh190015
  • wzh190015
  • 2015-11-30 22:25
  • 2114

蓝桥杯 数字三角形(java题解)

问题描述   (图3.1-1)示出了一个数字三角形。 请编一个程序计算从顶至底的某处的一条路   径,使该路径所经过的数字的总和最大。   ●每一步可沿左斜线向下或右斜线向下走;   ●1<三...
  • qq_15370821
  • qq_15370821
  • 2016-06-02 09:36
  • 1137

算法 -- 数字三角形之动态规划

好久没有好好写算法啦,因此今天晚上就思考实现老师说的一道算法题目: 用动态规划求解数字三角形. 下面简单描述下题目含义: 数字三角形中的数字要求为不超过100的非负整数.题目规定从最顶层开始往下走...
  • u013166575
  • u013166575
  • 2015-11-20 01:10
  • 1921

动态规划(DP)之入门学习-数字三角形

数字三角形案例题目描述 Description下图给出了一个数字三角形,请编写一个程序,计算从顶至底的某处的一条路径,使该路径所经过的数字的总和最大。 (1)每一步可沿左斜线向下或右斜线向下 ...
  • zwhlxl
  • zwhlxl
  • 2015-05-29 10:11
  • 7905

java实现各种数字三角形

1、实现直角三角形 第一行一个1,第二行2个2,第三行3个3,第四行4个4。。。。 效果: 源代码: package square; public class SanJiao { publi...
  • qq_21144531
  • qq_21144531
  • 2015-08-02 21:03
  • 4484

蓝桥杯-动态规划-java算法训练 数字三角形

问题描述   (图3.1-1)示出了一个数字三角形。 请编一个程序计算从顶至底的某处的一条路   径,使该路径所经过的数字的总和最大。   ●每一步可沿左斜线向下或右斜线向下走;   ●1<三角形行数...
  • qq_34594236
  • qq_34594236
  • 2016-04-16 09:51
  • 2577

数字三角形算法

数字三角形算法
  • u013412497
  • u013412497
  • 2014-06-24 00:14
  • 1317
    个人资料
    • 访问:712740次
    • 积分:15000
    • 等级:
    • 排名:第906名
    • 原创:815篇
    • 转载:7篇
    • 译文:0篇
    • 评论:122条
    博客专栏