zoukankan      html  css  js  c++  java
  • leetCode 64.Minimum Path Sum (最短路) 解题思路和方法

    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.


    思路:此题和前面几个机器人的题很相像。仅仅是变化了一点。详细代码和凝视例如以下:

    public class Solution {
        public int minPathSum(int[][] grid) {
            //动态规划思想
            //选取到本点的最小值(从上方和左方来的最小值)
            for(int i = 0; i < grid.length; i++)
                for(int j = 0; j < grid[0].length; j++){
                    if(i > 0 && j > 0)//分三种情况,第二行第二列之后
                        grid[i][j] += Math.min(grid[i-1][j],grid[i][j-1]);
                    else if(i == 0 && j > 0)//第一行
                        grid[i][j] += grid[i][j-1];
                    else if(i > 0 && j==0)//第一列
                        grid[i][j] += grid[i-1][j];
                }
            //返回最后一个值
            return grid[grid.length-1][grid[0].length-1];
        }
    }


  • 相关阅读:
    HDU 1856 More is better
    并查集模板
    HDU 1325 Is It A Tree?
    HDU 1272 小希的迷宫
    CodeVS 2639 约会计划
    POJ 1163 数字三角形
    HDU 1232 畅通工程
    HDU 1213 How Many Tables
    树形结构打印二叉树
    网址收藏
  • 原文地址:https://www.cnblogs.com/jzssuanfa/p/6757504.html
Copyright © 2011-2022 走看看