LeetCode120.三角形最小路径和

2018-10-28  本文已影响22人  mztkenan
class Solution:
    def minimumTotal(self, triangle):
        """
        :type triangle: List[List[int]]
        :rtype: int
        """
        s=[0]*(len(triangle)+1)
        for i in range(len(triangle)-1,-1,-1):
            for j in range(i+1):
                s[j]=min(s[j],s[j+1])+triangle[i][j]
        return s[0]

注意
1.s初始化n+1,各个边界条件要注意
2.i从n-1开始,由于s初始化为0,所以是s[j]初始化为a[i,j],不用写特殊处理代码
3.range(start,stop[,step]),左闭右开
4.自底向上的动态规划

上一篇下一篇

猜你喜欢

热点阅读