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

力扣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.xdnf.cn/news/10597.html

相关文章:

  • C. Basketball Exercise
  • Vue-6-前端框架Vue之基于Plotly.js绘制曲线
  • 3,信号与槽机制
  • BUUCTF[ACTF2020 新生赛]Include 1题解
  • NVM,Node.Js 管理工具
  • 【Delphi】接收windows文件夹中文件拖拽
  • (Python网络爬虫);抓取B站404页面小漫画
  • Python-matplotlib库之核心对象
  • 设计模式——备忘录设计模式(行为型)
  • Kotlin 中 companion object 扩展函数详解
  • Java连接Redis和基础操作命令
  • 【Linux】Ubuntu 20.04 英文系统显示中文字体异常
  • 什么是线程上下文切换?
  • 【SpringBoot】| 接口架构风格—RESTful
  • 概率统计:AI大模型的数学支柱
  • Linux--进程概念
  • 【redis实战篇】第七天
  • 03- javascript的运行原理
  • 启动metastore时报错MetaException(message:Version information not found in metastore
  • 海底三维可视化平台
  • 使用Python进行函数作画
  • azure devops 系列 - 常用的task
  • C++面向对象编程:类与对象详解
  • CppCon 2014 学习:(Costless)Software Abstractions for Parallel Architectures
  • 已有的前端项目打包到tauri运行(windows)
  • Python应用range函数初解pro
  • arc3.2语言sort的时候报错:(sort < `(2 9 3 7 5 1)) 需要写成这种:(sort > (pair (list 3 2)))
  • EXCEL--累加,获取大于某个值的第一个数
  • DeepSeek模型高级应用:提示工程与Few-shot学习实战指南
  • 【深度学习-Day 21】框架入门:神经网络模型构建核心指南 (Keras PyTorch)