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

力扣HOT100之多维动态规划:62. 不同路径


这道题用二维dp数组来做相当简单,是一道入门题。直接上动规五部曲:
1.确定dp[i][j]的含义:从起点到位置为[i][j]处的路径总数
2.确定递推公式 dp[i][j] = dp[i - 1][j] + dp[i][j - 1];
3.dp数组初始化 dp[0][j] = 1;dp[i][0] = 1;
4.确定遍历顺序:从左往右,从上往下遍历
5.打印数组(省略)
由于机器人每一次只能向右或者向下移动,不存在走弯路的情况,从地图的左上角走到右下角,每一步都是有效的,不是无用功。到达(i, j)处有两种方式:一种是先设法到达(i - 1, j)处,然后再向下走一步;第二种是先设法到达(i, j - 1)处,然后再向右走一步。因此到达(i, j)处的路径数总是等于到达(i - 1, j)处的路径总数与到达(i, j - 1)处的路径总数之和。

class Solution {
public:int uniquePaths(int m, int n) {//1.确定dp[i][j]的含义:从起点到位置为[i][j]处的路径总数//2.确定递推公式  dp[i][j] = dp[i - 1][j] + dp[i][j - 1];//3.dp数组初始化 dp[0][j] = 1;dp[i][0] = 1;//4.确定遍历顺序:从左往右,从上往下遍历//5.打印数组(省略)vector<vector<int>> dp(m, vector<int>(n, 1));for(int i = 1; i < m; i++){for(int j = 1; j < n; j++)dp[i][j] = dp[i - 1][j] + dp[i][j - 1];}return dp[m - 1][n - 1];}
};
http://www.lqws.cn/news/83611.html

相关文章:

  • 力扣HOT100之多维动态规划:64. 最小路径和
  • 量子物理:深入学习量子物理的基本概念与应用
  • Python_day43
  • Linux运维笔记:服务器感染 netools 病毒案例
  • mysql专题上
  • Vue 项目创建教程 (开发前的准备工作保姆级辅助文档)
  • 专注成就技术传奇:一路向前的力量
  • 数学建模期末速成 最短路径
  • Ubuntu22.04 安装 ROS2 Humble
  • Spark-TTS: AI语音合成的“变声大师“
  • ubuntu 添加应用到启动菜单
  • P5684 [CSP-J2019 江西] 非回文串 题解
  • Webpack依赖
  • Android高级开发第四篇 - JNI性能优化技巧和高级调试方法
  • 网络攻防技术三:网络脆弱性分析
  • 高阶数据结构——并查集
  • C语言基础(10)【二维数组 字符数组 字符串相关操作】
  • DAY01:【ML 第三弹】基本概念和建模流程
  • pytorch基本运算-范数
  • SCAU8640--希尔排序
  • 【知识点】第3章:基本数据类型
  • Python基础入门:开启编程之旅
  • 【算法训练营Day05】哈希表part1
  • vue router详解和用法
  • 数学建模期末速成 多目标规划
  • B1039 PAT乙级JAVA题解 到底买不买
  • 自定义序列生成器之单体架构实现
  • 截图工具 Snipaste V2.10.7(2025.06.2更新)
  • day 43
  • 【操作系统·windows快捷键指令】