news 2026/2/14 15:55:08

【小白笔记】杨辉三角

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
【小白笔记】杨辉三角


杨辉三角(Pascal’s Triangle)是一个非常经典的数学和算法问题。它的核心规律非常直观:每一行的首尾都是 1,其余位置的数值等于它正上方和左上方两个数值之和。


1. 算法思路


2. 代码实现 (Python)

classSolution:defgenerate(self,numRows:int)->List[List[int]]:triangle=[]forrow_numinrange(numRows):# 每一行的长度等于 ![当](https://i-blog.csdnimg.cn/direct/2578b7f30ccb4fc28f466c8857b841e2.png)前行索引+1# 初始化为一个全为 1 的列表row=[1]*(row_num+1)# 只有从第 3 行(索引为 2)开始,才有中间元素需要计算forjinrange(1,row_num):# 中间元素 = 上一行的左上方 + 正上方row[j]=triangle[row_num-1][j-1]+triangle[row_num-1][j]triangle.append(row)returntriangle

将“杨辉三角”放入**划分型动态规划(Partition DP)**的框架下分析是一个非常深刻的视角。虽然杨辉三角本身较为简单,但它是理解“状态转移依赖于上一层划分结果”的绝佳案例。




🚀 划分型 DP 通用模板代码 (杨辉三角版)

defpartition_dp_template(numRows):# 1. 初始化 DP 表 (处理边界)# 这里的 dp[i] 代表对第 i 层的划分结果dp=[[1]*(i+1)foriinrange(numRows)]# 2. 外部循环:枚举规模 (自底向上,从第 3 层开始)foriinrange(2,numRows):# 3. 内部循环:枚举当前规模下的所有划分点/位置forjinrange(1,i):# 4. 状态转移:利用重叠子问题的结果# 当前决策 = 依赖于前一阶段已计算出的子状态dp[i][j]=dp[i-1][j-1]+dp[i-1][j]# 5. 返回最终状态returndp

💡 划分型 DP 的攻克口诀

  1. 分哪儿:枚举最后一个划分点 。
  2. 看前面:当前最优 = + [0, k-1] 的子问题的解。
  3. 记下来:用数组存储已计算的划分结果,避免重复。
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/2/13 16:48:17

Excalidraw浏览器兼容性测试:主流平台表现汇总

Excalidraw浏览器兼容性测试:主流平台表现汇总 在远程办公成为常态的今天,一个能“随手画、随时改、多人看”的协作白板,几乎成了技术团队开会时的刚需。无论是敏捷站会中快速勾勒系统架构,还是故障复盘时还原事件时间线&#xff…

作者头像 李华
网站建设 2026/2/13 16:05:04

Excalidraw批量操作技巧:同时编辑多个图形

Excalidraw批量操作技巧:同时编辑多个图形 在现代技术团队的日常协作中,一张清晰的架构图往往胜过千言万语。然而,当面对数十个微服务节点、层层嵌套的组件和错综复杂的连接线时,逐个点击调整每一个图形不仅耗时费力,还…

作者头像 李华
网站建设 2026/2/10 20:16:03

Excalidraw创建风格指南:统一品牌视觉语言

Excalidraw 风格指南:构建统一的品牌视觉语言 在当今快速迭代的团队协作环境中,一张草图可能比十页文档更能迅速凝聚共识。无论是技术架构评审、产品原型讨论,还是跨部门流程梳理,可视化表达早已成为现代工作流的核心环节。然而&a…

作者头像 李华
网站建设 2026/2/6 23:02:38

Excalidraw嵌套元素:构建层次化信息模型

Excalidraw嵌套元素:构建层次化信息模型 在技术团队的日常协作中,你是否曾遇到这样的场景:一张密密麻麻的架构图摆在面前,十几个微服务交错连接,箭头纵横,颜色混杂,新加入的成员盯着屏幕三分钟仍…

作者头像 李华
网站建设 2026/2/6 9:52:43

Excalidraw私有化部署成本分析:企业级应用考量

Excalidraw私有化部署成本分析:企业级应用考量 在当今分布式团队日益成为常态的背景下,如何高效地进行技术讨论、架构设计和产品原型沟通,已成为企业协作效率的关键瓶颈。传统的文档或静态图片难以承载动态思维过程,而市面上主流的…

作者头像 李华
网站建设 2026/2/5 10:25:24

Excalidraw评论功能:团队审阅沟通新方式

Excalidraw评论与AI图生图:重塑团队协作的视觉语言 在远程办公成为常态的今天,一个看似简单的问题却频繁困扰着技术团队:如何让设计评审不变成“你说东我指西”的沟通灾难?一张架构图背后可能藏着几十条散落在IM、邮件和会议纪要里…

作者头像 李华