机试刷题_矩阵的最小路径和【python】

题目矩阵的最小路径和

python 复制代码
#
# 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
#
# 
# @param matrix int整型二维数组 the matrix
# @return int整型
#
class Solution:
    def minPathSum(self , matrix: List[List[int]]) -> int:
        # 动态规划
        n = len(matrix)
        m = len(matrix[0])
        # 初始化dp表
        dp = [[0]*m for i in range(n)]
        dp[0][0] = matrix[0][0]
        # 首行
        for i in range(1,m):
            dp[0][i] = dp[0][i-1]+matrix[0][i]
        # 首列
        for j in range(1,n):
            dp[j][0] = dp[j-1][0]+matrix[j][0]
        #状态转移
        for i in range(1,n):
            for j in range(1,m):
                dp[i][j] = min(dp[i-1][j],dp[i][j-1])+matrix[i][j]
        return dp[n-1][m-1]
        
相关推荐
Olamyh5 小时前
【手搓 ReAct Agent:告别框架,回归本质】
人工智能·python
数研小生5 小时前
Python自然语言处理:NLTK与Gensim库
开发语言·python·自然语言处理
renke33645 小时前
Flutter for OpenHarmony:数字涟漪 - 基于扩散算法的逻辑解谜游戏设计与实现
算法·flutter·游戏
AI科技星5 小时前
从ZUFT光速螺旋运动求导推出自然常数e
服务器·人工智能·线性代数·算法·矩阵
love530love5 小时前
Windows 下 GCC 编译器安装与排错实录
人工智能·windows·python·gcc·msys2·gtk·msys2 mingw 64
老鼠只爱大米5 小时前
LeetCode经典算法面试题 #78:子集(回溯法、迭代法、动态规划等多种实现方案详细解析)
算法·leetcode·动态规划·回溯·位运算·子集
执着2595 小时前
力扣hot100 - 199、二叉树的右视图
数据结构·算法·leetcode
I_LPL6 小时前
day21 代码随想录算法训练营 二叉树专题8
算法·二叉树·递归
可编程芯片开发6 小时前
基于PSO粒子群优化PI控制器的无刷直流电机最优控制系统simulink建模与仿真
人工智能·算法·simulink·pso·pi控制器·pso-pi
cpp_25016 小时前
P8448 [LSOT-1] 暴龙的土豆
数据结构·c++·算法·题解·洛谷