Golang | Leetcode Golang题解之第64题最小路径和

题目:

题解:

Go 复制代码
func minPathSum(grid [][]int) int {
    if len(grid) == 0 || len(grid[0]) == 0 {
        return 0
    }
    rows, columns := len(grid), len(grid[0])
    dp := make([][]int, rows)
    for i := 0; i < len(dp); i++ {
        dp[i] = make([]int, columns)
    }
    dp[0][0] = grid[0][0]
    for i := 1; i < rows; i++ {
        dp[i][0] = dp[i - 1][0] + grid[i][0]
    }
    for j := 1; j < columns; j++ {
        dp[0][j] = dp[0][j - 1] + grid[0][j]
    }
    for i := 1; i < rows; i++ {
        for j := 1; j < columns; j++ {
            dp[i][j] = min(dp[i - 1][j], dp[i][j - 1]) + grid[i][j]
        }
    }
    return dp[rows - 1][columns - 1]
}

func min(x, y int) int {
    if x < y {
        return x
    }
    return y
}
相关推荐
半路程序员2 小时前
Go语言学习(四)
开发语言·学习·golang
秦禹辰2 小时前
轻量级开源文件共享系统PicoShare本地部署并实现公网环境文件共享
开发语言·后端·golang
zycoder.3 小时前
力扣面试经典150题day3第五题(lc69),第六题(lc189)
算法·leetcode·面试
数据知道6 小时前
Go基础:一文掌握Go语言泛型的使用
开发语言·后端·golang·go语言
QX_hao9 小时前
【Go】--数据类型
开发语言·后端·golang
h7997109 小时前
redis lua脚本(go)调用教程以及debug调试
redis·golang·lua
趣味编程1119 小时前
go的学习2---》并发编程
学习·golang·perl
_dindong10 小时前
基础算法:滑动窗口
数据结构·学习·算法·leetcode·力扣
nju_spy14 小时前
力扣每日一题(二)任务安排问题 + 区间变换问题 + 排列组合数学推式子
算法·leetcode·二分查找·贪心·排列组合·容斥原理·最大堆
代码对我眨眼睛14 小时前
226. 翻转二叉树 LeetCode 热题 HOT 100
算法·leetcode·职场和发展