LeetCode 64. 最小路径和 📅 发布时间:2026/7/15 0:37:41 👁️ 浏览次数: 最小路径和题目核心在一个 m \times n 的网格中寻找从左上角到右下角的路径使得路径上的数字总和最小。每次只能向下或向右移动。1. 核心状态转移方程无论使用哪种写法的代码核心逻辑永远是当前格子的最小值 min(上面走下来的值, 左边走过来的值) 当前格子的值数学表达式dp[i][j] \min(dp[i-1][j], \ dp[i][j-1]) grid[i][j]2. 解法一二维 DP (直观基础版) 思路创建一个和原网格一样大的dp表。dp[i][j]代表到达坐标 (i, j) 的最小路径和。填表顺序从左上往右下。边界初始化第一行只能从左边走过来累加。第一列只能从上面走下来累加。内部填充比较上和左的值取小的。 代码实现public int minPathSum(int[][] grid) { int rows grid.length; int cols grid[0].length; int[][] dp new int[rows][cols]; // 1. 起点初始化 dp[0][0] grid[0][0]; // 2. 初始化第一行 (只能向右走) for (int i 1; i cols; i){ dp[0][i] dp[0][i-1] grid[0][i]; } // 3. 初始化第一列 (只能向下走) for (int i 1; i rows; i){ dp[i][0] dp[i-1][0] grid[i][0]; } // 4. 填充中间 (比较左边和上边) for(int i 1; i rows; i){ for(int j 1; j cols; j){ // 比较上格 dp[i-1][j] 和左格 dp[i][j-1] dp[i][j] Math.min(dp[i-1][j], dp[i][j-1]) grid[i][j]; } } return dp[rows-1][cols-1]; }•时间复杂度O(M \times N)•空间复杂度O(M \times N)3. 解法二一维 DP (空间优化版) 思路 (滚动数组)由于计算当前行时只依赖于“当前行左侧”和“上一行同列”的数据我们可以将二维数组压缩为一维数组dp[cols]。空间覆盖逻辑在更新dp[j]之前dp[j]存的是上一行的值等同于二维中的dp[i-1][j]。更新后的dp[j-1]存的是本行左侧的值等同于二维中的dp[i][j-1]。 代码实现public int minPathSum(int[][] grid) { int rows grid.length; int cols grid[0].length; int[] dp new int[cols]; // 1. 初始化第一行 dp[0] grid[0][0]; for (int i 1; i cols; i){ dp[i] dp[i-1] grid[0][i]; } // 2. 逐行推进 (从第二行开始) for(int i 1; i rows; i){ // 每行第一个元素只能从上方加下来 dp[0] grid[i][0]; for(int j 1; j cols; j){ // dp[j] (旧值) 是上方贡献dp[j-1] (新值) 是左方贡献 dp[j] Math.min(dp[j], dp[j-1]) grid[i][j]; } } return dp[cols-1]; }时间复杂度O(M \times N)空间复杂度O(N) 复习要点方向限制只能下/右决定了状态只来源于左和上。初始化第一行和第一列是“死路”只有一种走法必须先单独处理。优化直觉只要方程里只出现了i和i-1通常都可以优化到一维空间。
告别重装系统!用宝塔官方卸载脚本一键清理面板与环境(附LNMP保留方案) 宝塔面板深度卸载指南:精准控制环境清理与数据保留策略 每次面对服务器环境调整时,那种"要不要重装系统"的纠结感总让人头疼。特别是当宝塔面板需要卸载时,大多数教程要么简单带过,要么直接建议核弹式的系统重装。但真实… 2026/5/17 4:44:05
微信聊天记录的数字守护:WeChatMsg本地存储解决方案全解析 微信聊天记录的数字守护:WeChatMsg本地存储解决方案全解析 【免费下载链接】WeChatMsg 提取微信聊天记录,将其导出成HTML、Word、CSV文档永久保存,对聊天记录进行分析生成年度聊天报告 项目地址: https://gitcode.com/GitHub_Trending/we/W… 2026/4/1 0:13:15
AI求职市场分析:2026年热门岗位预测 站在变革十字路口的软件测试2026年的技术浪潮正以前所未有的速度重塑着IT行业的版图。对于软件测试从业者而言,这既是严峻的挑战,更是职业跃迁的黄金机遇。AI已不再是遥远的未来概念,而是深度嵌入软件开发生命周期的核心驱动力,正… 2026/4/1 0:12:12
上下文工程:Agent的长上下文、记忆管理与Token治理最佳实践 上下文工程为何是Agent的心脏大模型驱动的Agent系统正在重塑软件开发范式。开发者往往聚焦于提示词优化和工具调用链设计,却容易忽视一个更底层的命题:上下文才是决定Agent智能水平的关键变量。Agent每一次决策都依赖于对历史信息的理解和当前状态的感知… 2026/7/15 0:35:11
RAG最大陷阱:文档分片不等于知识库,业务域语义隔离才是瓶颈 当下多数企业搭建私有化 RAG 知识库时,重心都放在文档解析、文本切片、向量入库这类基础流程上,普遍默认只要完成文档向量化存入向量库,就能搭建可用的企业私有知识库。但规模化落地后会持续暴露核心短板:单纯的向量检索无法区分不… 2026/7/15 0:35:11
ChatGPT接入方案怎么选?LLM部署成本、延迟、合规性——三维度量化对比表(含实测TPS与Token损耗数据) 更多请点击: https://intelliparadigm.com 第一章:ChatGPT接入方案怎么选?LLM部署成本、延迟、合规性——三维度量化对比表(含实测TPS与Token损耗数据) 选择合适的ChatGPT接入方案,需在真实生产环境中对关… 2026/7/15 0:33:10
计算机毕业设计之jsp小学生作业帮平台的设计与实现 随着信息化时代的到来,管理系统都趋向于智能化、系统化,小学生作业帮平台也不例外,但目前国内的有些学校仍然都使用人工管理,学校规模越来越大,同时信息量也越来越庞大,人工管理显然已无法应对时代的变化&a… 2026/7/15 0:31:10
Python asyncio 深度并发:驾驭大模型调用的“车水马龙” 如果你正在用 FastAPI 构建一个 AI 应用,大概率会遇到这样的场景:用户发来一个问题,你需要同时调用 3 个大模型接口(比如让 GPT-4 写文案、让 Claude 做润色、让文心一言做翻译),最后把结果拼在一起。最笨的… 2026/7/15 0:27:09
Copilot团队管理功能落地全图谱(从权限配置到效能看板):微软内部PM未公开的7条黄金规则 更多请点击: https://codechina.net 第一章:Copilot团队管理功能全景概览 GitHub Copilot 的团队管理功能为组织级开发协作提供了统一策略配置、成员权限控制与使用洞察分析能力,覆盖从开发者准入到资源配额分配的全生命周期管理。该功能依托… 2026/7/15 0:23:09
行星减速机的工作原理是什么?从齿轮运动关系到减速比计算 一、行星齿轮机构的组成 标准行星齿轮机构主要包括: 太阳轮; 行星轮; 内齿圈; 行星架。 太阳轮位于机构中心。 多个行星轮围绕太阳轮均匀布置,行星轮内侧与太阳轮外啮合,外侧与内齿圈内啮合。 行星轮通过轴… 2026/7/15 0:03:00
阅读Java开源框架源码的心得分享! 前几日闲来无事有幸看到了一位博主分享自己阅读开源框架源码的心得,看了之后也引发了我的一些深度思考。我们为什么要看源码?我们该怎么样去看源码? 其中前者那位博主描述的我觉得很全了(如下图所示),就不做… 2026/7/15 0:03:00
【LINUX】驱动 【LINUX驱动】【字符设备】【中断】【Platform】【网课 设备树】【GPIO】【PINCTRL】【INPUT】【IIC】【SPI】【网络驱动】【屏幕驱动】【一 设备树】【二 内核模块编译】【三 基本驱动框架】【四 Platform总线设备驱动框架】【五 驱动子系统】【六 综合】 2026/7/15 0:07:01
Git reset 与 revert 深度对比:5个关键差异与 3 种典型应用场景 Git Reset 与 Revert 深度对比:5个关键差异与3种典型应用场景在团队协作开发中,代码版本管理如同行走钢丝——一步失误可能导致整个项目陷入混乱。作为Git进阶用户,你是否曾在深夜面对错误的提交束手无策?是否在强制推送后收到同事… 2026/7/13 8:31:55
GitHub 学生包申请避坑:5个常见失败原因与开发者工具调试方案 GitHub 学生包申请技术排障指南:5个高频失败场景与开发者工具实战方案第一次尝试申请GitHub学生包时,我盯着屏幕上那个不断转圈的加载动画整整15分钟,最终只等来了一行冰冷的错误提示。这可能是许多开发者共同的经历——明明按照教程操作&… 2026/7/14 18:25:04
冒烟测试用例设计规范:5%-10%覆盖率下的3类核心场景与执行标准 冒烟测试用例设计的黄金法则:5%-10%覆盖率下的精准筛选策略在快节奏的敏捷开发环境中,冒烟测试作为质量保障的第一道防线,其重要性不言而喻。当测试资源有限而时间紧迫时,如何从海量测试用例中精准筛选出那关键的5%-10%࿰… 2026/7/14 5:09:41