题解 | #三角形最小路径和#

三角形最小路径和

https://www.nowcoder.com/practice/c9d44b73dc7c4dbfa4272224b1f9b42c

import traceback
from sys import flags
from itertools import count
#
# 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
#
# 
# @param triangle int整型二维数组 
# @return int整型
#
class Solution:
    def minTrace(self , triangle: List[List[int]]) -> int:
        # write code here
        # 递归不好做
        n = len(triangle)
        if n ==1:
            return triangle[0][0]
        #第n-1的值更改为:
        for i in range(0,n-1):
            for j in range(0,n-1-i):
                triangle[n-2-i][j] = triangle[n-2-i][j]+min(triangle[n-1-i][j],triangle[n-1-i][j+1])

        return triangle[0][0]

这一题看起来挺简单的,做起来觉得挺难的,一开始想着递归,后来发现怎么这么复杂,不是递归能做出来的

尝试动态规划

全部评论

相关推荐

头像
05-27 20:32
已编辑
深度学习
工行数据中心 偏运维养老 到手可能18w
点赞 评论 收藏
转发
点赞 收藏 评论
分享
牛客网
牛客企业服务