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

网站设计深圳联系电话?在线设计房屋布局软件

网站设计深圳联系电话?,在线设计房屋布局软件,电商网站建设哪好,网站后台浏览器动态规划解决LeetCode 63题:不同路径 II(含障碍物) 1. 题目链接 LeetCode 63. 不同路径 II 2. 题目描述 一个机器人位于 m x n 网格的左上角,每次只能向右或向下移动一步。网格中可能存在障碍物(标记为 1&#xff…

动态规划解决LeetCode 63题:不同路径 II(含障碍物)

1. 题目链接

LeetCode 63. 不同路径 II

2. 题目描述

一个机器人位于 m x n 网格的左上角,每次只能向右或向下移动一步。网格中可能存在障碍物(标记为 1),机器人不能经过障碍物。求从左上角到右下角的不同路径总数。

示例 1
输入:obstacleGrid = [[0,0,0],[0,1,0],[0,0,0]]
输出:2
解释:存在障碍物在中心位置,两条路径为:

  1. 右 -> 右 -> 下 -> 下
  2. 下 -> 下 -> 右 -> 右

示例 2
输入:obstacleGrid = [[0,1],[0,0]]
输出:1

3. 示例分析

示例 1 的输入为例:

  • 机器人需要绕过中心的障碍物。
  • 动态规划表 dp 在计算时会跳过障碍物位置,最终右下角的值为 2

4. 算法思路

动态规划状态定义

  • dp[i][j] 表示到达网格 (i-1, j-1) 位置的有效路径数(ij1 开始,避免越界)。

状态转移方程

  • (i-1, j-1) 是障碍物,dp[i][j] = 0(无法到达)。
  • 否则,dp[i][j] = dp[i-1][j] + dp[i][j-1]

初始化技巧

  • 初始化 dp[0][1] = 1,使得 dp[1][1] 可以正确推导初始值,无需单独处理第一行和第一列。

5. 边界条件与注意事项

  1. 起点或终点为障碍物:直接返回 0
  2. 单行或单列网格:若路径中存在障碍物,路径数为 0
  3. 障碍物处理:遍历时需跳过障碍物位置,保持 dp[i][j] = 0

6. 代码实现(修正版)

class Solution {
public:int uniquePathsWithObstacles(vector<vector<int>>& obstacleGrid) {int m = obstacleGrid.size(), n = obstacleGrid[0].size();// 起点或终点是障碍物,直接返回0if (obstacleGrid[0][0] == 1 || obstacleGrid[m-1][n-1] == 1) return 0;vector<vector<int>> dp(m + 1, vector<int>(n + 1, 0));dp[0][1] = 1; // 初始化虚拟起点for (int i = 1; i <= m; i++) {for (int j = 1; j <= n; j++) {// 跳过障碍物位置if (obstacleGrid[i-1][j-1] == 0) {dp[i][j] = dp[i-1][j] + dp[i][j-1];}}}return dp[m][n];}
};

代码解析

  1. 提前检查障碍物:若起点或终点是障碍物,直接返回 0,避免无效计算。
  2. 动态规划表填充:遍历时跳过障碍物位置,保证路径数不会累加无效值。
  3. 返回值dp[m][n] 表示到达右下角的有效路径总数。

时间复杂度O(mn),空间复杂度:O(mn)。通过动态规划表逐格计算,高效处理含障碍物的路径问题。

http://www.dtcms.com/a/543630.html

相关文章:

  • 北京建设网站的公司网络推广整合平台
  • 微网站建设86215腾讯云建站流程
  • 怎么使用网站模板定制商城app开发
  • 公司做个网站多少钱网页的六个基本元素
  • 网站的特征包括哪些济南集团网站建设费用
  • 天猫网站的建设目标黄山建设厅官方网站
  • 加拿大购物网站排名朋友圈的广告推广怎么弄
  • 做视频网站 带宽多少才合适free免费空间
  • 灰色项目网站代做分销系统小程序开发
  • 自己做网站帮公司出认证证书违法吗淄博周村专业网站建设公司
  • 北京网站建设案例百度一下生活更好
  • 电子商务运营网站wordpress多站点子域名
  • 网站建设不用虚拟主机ico交易网站怎么做
  • 专业公司网站开发服务阿里巴巴友情链接怎么设置
  • 网站开发的高级阶段包括vs2017网站开发时修改的页面未变化
  • 做热饮店网站凯里建设网站
  • 网站开发系统调研目的电力工程造价信息网
  • 关于网站建设的问卷调查网站开发外包合同范本
  • 有什么网站做可以国外的生意湖州网站建设哪家好
  • 广州网站制作公司多少钱网络设计专业可以学什么
  • 中石油第六建设公司网站中铁建设集团门户网登录失败
  • 山东信达建设有限公司网站vps网站管理器
  • 怎么做自己的网站推广离石做网站的公司
  • 做网站只开发手机端可不可以太原小程序开发定制
  • 北京网站开发网站开发公司wordpress md5工具
  • 专业做写生的网站花生壳如何做网站
  • 异构国际设计公司网站常州app制作
  • 勒索做钓鱼网站的人wordpress 前端模板
  • php网站开发练手项目凡科登录电脑版
  • 户外网站 整站下载网站开发怎么在页面上调用高德地图显示位置