C语言 | Leetcode C语言题解之第64题最小路径和

题目:

题解:

cpp 复制代码
int minPathSum(int** grid, int gridSize, int* gridColSize) {
    int rows = gridSize, columns = gridColSize[0];
    if (rows == 0 || columns == 0) {
        return 0;
    }
    int dp[rows][columns];
    dp[0][0] = grid[0][0];
    for (int i = 1; i < rows; i++) {
        dp[i][0] = dp[i - 1][0] + grid[i][0];
    }
    for (int j = 1; j < columns; j++) {
        dp[0][j] = dp[0][j - 1] + grid[0][j];
    }
    for (int i = 1; i < rows; i++) {
        for (int j = 1; j < columns; j++) {
            dp[i][j] = fmin(dp[i - 1][j], dp[i][j - 1]) + grid[i][j];
        }
    }
    return dp[rows - 1][columns - 1];
}
相关推荐
永远前进不waiting18 分钟前
C复习——3
c语言·开发语言
一路往蓝-Anbo1 小时前
STM32单线串口通讯实战(四):裸机架构 —— 事件驱动与状态机设计
c语言·开发语言·stm32·单片机·嵌入式硬件·架构
im_AMBER1 小时前
Leetcode 93 找出临界点之间的最小和最大距离
c++·笔记·学习·算法·leetcode
有一个好名字1 小时前
力扣:除自身以外数组的乘积
java·算法·leetcode
iAkuya3 小时前
(leetcode)力扣100 31K个一组翻转链表(模拟)
算法·leetcode·链表
莫小墨4 小时前
类型转换—c、c++总结
c语言·c++
POLITE35 小时前
Leetcode 21.合并两个有序链表 JavaScript (Day 10)
javascript·leetcode·链表
梭七y5 小时前
【力扣hot100题】(105)三数之和
数据结构·算法·leetcode
智者知已应修善业7 小时前
【组合数】2024-3-16
c语言·c++·经验分享·笔记·算法
量子炒饭大师8 小时前
Cyber骇客的层级霸权——【优化算法】之【排序算法】堆排序
c语言·c++·算法·排序算法