news 2026/6/8 23:38:38

【小白笔记】杨辉三角

作者头像

张小明

前端开发工程师

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/6/8 22:20:31

Excalidraw映射触点旅程:服务设计核心工具

Excalidraw:服务设计中的可视化协作新范式 在一场远程产品评审会上,团队成员正围坐在各自的屏幕前。产品经理抛出一个问题:“用户从看到广告到完成首次购买,中间经历了哪些关键瞬间?”传统的回答可能是翻阅PPT、打开文…

作者头像 李华
网站建设 2026/6/7 13:05:39

Excalidraw与Figma对比:UI设计初期哪个更强?

Excalidraw 与 Figma:谁才是设计初期的真正利器? 在一次产品需求评审会上,团队正为新功能的交互流程争论不休。产品经理在白板上画了几笔草图,工程师指着某个箭头说“这里逻辑不通”,设计师立刻拖动方框重新排布——十…

作者头像 李华
网站建设 2026/6/8 21:16:04

Excalidraw图形容器:分组管理复杂结构

Excalidraw图形容器:分组管理复杂结构 在一场远程架构评审会议上,团队正围绕一个微服务系统的草图激烈讨论。屏幕上布满了散落的矩形、箭头和文字标签——有人刚修改了“订单服务”的位置,结果不小心拖动了本属于“支付网关”的连接线&#x…

作者头像 李华
网站建设 2026/6/8 7:50:38

AI原生应用领域多租户的性能监控指标与方法

AI原生应用领域多租户的性能监控指标与方法关键词:AI原生应用、多租户架构、性能监控、指标体系、云原生技术摘要:随着AI技术与云原生架构的深度融合,"AI原生应用"已成为企业智能化转型的核心载体。这类应用的典型特征是支持多租户…

作者头像 李华
网站建设 2026/6/9 6:55:03

Excalidraw自定义素材库:建立专属图形资源中心

Excalidraw自定义素材库:建立专属图形资源中心 在技术团队日益依赖可视化协作的今天,一张清晰、一致且高效的架构图,往往比千言万语更能推动项目前进。然而现实是,每次画图都像是从零开始——Redis图标画得不像上次,微…

作者头像 李华
网站建设 2026/6/7 16:35:58

Unity3D 语音操控效果演示

基于 Unity3D 引擎实现语音控制的模型动画切换系统。自动识别麦克风并解析语音指令,如跳跃、奔跑、换弹、射击、待机等,使 3D 模型实时切换对应动画。同时支持场景切换与程序退出等功能。 Unity3D 语音操控效果演示

作者头像 李华