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

动态规划(6)下降路径最小值

给你一个 n x n 的 方形 整数数组 matrix ,请你找出并返回通过 matrix 的下降路径  最小和 。

下降路径 可以从第一行中的任何元素开始,并从每一行中选择一个元素。在下一行选择的元素和当前行所选元素最多相隔一列(即位于正下方或者沿对角线向左或者向右的第一个元素)。具体来说,位置 (row, col) 的下一个元素应当是 (row + 1, col - 1)(row + 1, col) 或者 (row + 1, col + 1) 。

示例 1:

输入:matrix = [[2,1,3],[6,5,4],[7,8,9]]
输出:13
解释:如图所示,为和最小的两条下降路径
public class Solution {public int minFallingPathSum(int[][] matrix) {//1.创建dp表//2.初始化//3.填表//4.返回值int n= matrix.length;int[][] dp =new int[n+1][n+2];for (int i=1;i<=n;i++)dp[i][n+1]=Integer.MAX_VALUE;for (int i=1;i<=n;i++)for (int j=1;j<=n;j++)dp[i][j] =Math.min(dp[i-1][j],Math.min(dp[i-1][j-1],dp[i-1][j+1]))+matrix[i-1][j-1];int ret=Integer.MAX_VALUE;for (int j=1;j<=n;j++)ret=Math.min(ret,dp[n][j]);return  ret;}public static void main(String[] args) {Solution solution=new Solution();int [][]matrix={{-19,57},{-40,5}};System.out.println(solution.minFallingPathSum(matrix));}}

相关文章:

  • C++ gtest单元测试
  • golang逃逸分析
  • AI 集成
  • C/C++ 结构体:. 与 -> 的区别与用法及其STM32中的使用
  • 基于MATLAB实现传统谱减法以及两种改进的谱减法(增益函数谱减法、多带谱减法)的语音增强
  • mysql:MVCC机制
  • leetcode 39. Combination Sum和40. Combination Sum II
  • 人工智能100问☞第32问:什么是迁移学习?
  • 机器学习课程设计报告 —— 基于口红数据集的情感分析
  • 【免杀】C2免杀技术(九)DLL注入前置篇
  • 事务操作语句
  • 美团2025年校招笔试真题手撕教程(三)
  • [Linux]磁盘分区及swap交换空间
  • React整合【ECharts】教程002:折线图的构建和基本设置
  • 疫情社区管理登记系统
  • 基于TypeScript的全栈待办事项应用Demo
  • binlog解析工具——binlog2sql
  • 机械师安装ubantu双系统:二、磁盘分区
  • 【MPC控制 - 从ACC到自动驾驶】5. 融会贯通:MPC在ACC中的优势总结与知识体系构建
  • 浏览器游戏的次世代革命:WebAssembly 3.0 实战指南
  • 如何在网上推广app/seo站外推广有哪些
  • 网站备案填写电话号码/91永久海外地域网名
  • 县工商局 网站建设/种子搜索神器
  • 学做网站论坛vip账号破解/百度如何收录网站
  • 网站如何做镜像/制作网站要找什么公司
  • 人才网站建设策划书/啥是网络推广