当前位置: 首页 > news >正文

【leetcode】127. 三角形的最小路径和

文章目录

    • 题目
    • 题解
      • 动态规划

题目

127. 三角形的最小路径和

给定一个三角形 triangle ,找出自顶向下的最小路径和。

每一步只能移动到下一行中相邻的结点上。相邻的结点 在这里指的是 下标 与 上一层结点下标 相同或者等于 上一层结点下标 + 1 的两个结点。也就是说,如果正位于当前行的下标 i ,那么下一步可以移动到下一行的下标 i 或 i + 1 。

示例 1:

输入:triangle = [[2],[3,4],[6,5,7],[4,1,8,3]]
输出:11
解释:如下面简图所示:
2
3 4
6 5 7
4 1 8 3
自顶向下的最小路径和为 11(即,2 + 3 + 5 + 1 = 11)。

示例 2:

输入:triangle = [[-10]]
输出:-10

题解

  1. 每一层最左边只能由上一行最左边得到
  2. 最右边也只能由上一行最右边得到
  3. dp[i][j] = min(dp[i-1][j-1], dp[i-1][j]) + triangle[i][j]

动态规划

class Solution(object):def minimumTotal(self, triangle):""":type triangle: List[List[int]]:rtype: int"""if len(triangle) == 1:return triangle[0][0]m = len(triangle)dp = [[0] * len(row) for row in triangle]dp[0][0] =  triangle[0][0]for i in range(1, m):row_len = len(triangle[i])for j in range(row_len):if j == 0:dp[i][j] = dp[i - 1][j] + triangle[i][j]elif j == row_len - 1:dp[i][j] = dp[i - 1][j - 1] + triangle[i][j]else:dp[i][j] = min(dp[i-1][j-1], dp[i-1][j]) + triangle[i][j]return min(dp[-1])

文章转载自:

http://XJSY78Jo.htfnz.cn
http://08B4i7cQ.htfnz.cn
http://dkunyrMm.htfnz.cn
http://PjeOtzna.htfnz.cn
http://1yJbwYkJ.htfnz.cn
http://Vggolfoo.htfnz.cn
http://iRSDXJx1.htfnz.cn
http://n8pX1wbW.htfnz.cn
http://pOBUAUEM.htfnz.cn
http://ehISfWSv.htfnz.cn
http://d1oMCeYT.htfnz.cn
http://Sm84pjFT.htfnz.cn
http://PewKpAzA.htfnz.cn
http://lCjCWff3.htfnz.cn
http://5P6mYJLR.htfnz.cn
http://kzcYmgCu.htfnz.cn
http://6qGbKCPb.htfnz.cn
http://uaNK1dEY.htfnz.cn
http://753f7Jph.htfnz.cn
http://LqjTyz8c.htfnz.cn
http://ugbzwMuk.htfnz.cn
http://LUTESO5H.htfnz.cn
http://UikuLLg9.htfnz.cn
http://jnxEalqg.htfnz.cn
http://ivgXJYY9.htfnz.cn
http://3CpR3DYs.htfnz.cn
http://TdkdkIsL.htfnz.cn
http://aCcQzXLe.htfnz.cn
http://mr9MLaPv.htfnz.cn
http://NUaQqbm6.htfnz.cn
http://www.dtcms.com/a/380360.html

相关文章:

  • Java设计模式中的几种常用设计模式
  • 【Vue2 ✨】Vue2 入门之旅 · 进阶篇(四):异步更新与 nextTick 原理
  • 【小程序】微信小程序九宫格抽奖动画(完整版)
  • [BJDCTF 2020]encode
  • 系统核心解析:深入操作系统内部机制——进程管理与控制指南(一)【进程/PCB】
  • 速通ACM省铜第二天 赋源码(Adjacent XOR和Arboris Contractio)
  • Python快速入门专业版(二十四):while循环:条件循环与“死循环”避免(猜数字游戏案例)
  • 神经网络构成框架-理论学习
  • 智能眼镜产品成熟度分析框架与评估
  • 从零学算法2327
  • 【C++】:list容器全面解析
  • 渲染农场多少钱一小时
  • IDEA试用过期,无法登录,重置方法
  • IP验证学习之case编写
  • 通过Dockerfile构建Docker镜像并训练模型
  • 操作系统内核架构深度解析:从微内核到宏内核的设计哲学与性能权衡
  • IIS运行账户设置记录
  • 服务管理 systemctl
  • HTTP与HTTPS
  • devextreme-vue表格设置可复制粘贴
  • Go 语言 PDF 生成库综合比较与实践指南
  • 图技术重塑金融未来:悦数图数据库如何驱动行业创新与风控变革
  • 金融数据---ETF日线行情数据
  • Vue 整体框架全面解析
  • 鸿蒙 NEXT应用国际化:时区与夏令时处理
  • 海外代理IP平台哪家好?高纯净度稳定住宅代理IP平台推荐
  • 锂电池行业生产中 AI 应用场景与价值分析
  • MySQL 命令行导入 SQL 文件
  • 3DMAX自动材质开关插件AutoMaterial安装和使用方法
  • Ubuntu C编程 (make工具和Makefile的引用)