思路:一开始用的BFS,超时了,感觉这题可以用数学方程做,但懒得推理了,直接用的动态规划;算是动态规划入门题吧;path[i][j]表示点(i,j)到重点的不同路径个数,那么path[i][j]=path[i+1][j]+path[i][j+1],一开始处理边界,最后一列和最后一行都置为1,因为它们到终点只有一条路径,然后用方程即可;

//动态规划
int uniquePaths(int m, int n)
{if (m == 1 && n == 1)return 1;vector<vector<int>> path(m, vector<int>(n, 0));//最右边一列和最下面一行的路径个数都只能为1for (int i = 0; i < m; i++)path[i][n - 1] = 1;for (int i = 0; i < n; i++)path[m - 1][i] = 1;for (int i = m - 2; i >= 0; i--){for (int j = n - 2; j >= 0; j--){path[i][j] = path[i + 1][j] + path[i][j + 1];}}return path[0][0];
}// BFS
// int uniquePaths(int m, int n)
// {//     if (m == 1 && n == 1)
//         return 1;
//     queue<vector<int>> q;
//     q.push({0, 0});
//     int count = 0;
//     while (!q.empty())
//     {//         int len = q.size();
//         while (len--)
//         {//             vector<int> loc = q.front();
//             q.pop();
//             if (loc[0] == m - 1 && loc[1] == n - 1)
//             {//                 count++;
//                 continue;
//             }
//             //如果还能向下走
//             if (loc[0] + 1 < m)
//                 q.push({loc[0] + 1, loc[1]});
//             //如果还能向右走
//             if (loc[1] + 1 < n)
//                 q.push({loc[0], loc[1] + 1});
//         }
//     }
//     return count++;
// }

Leetcode每日一题:62.unique-paths(不同路径)相关推荐

  1. 《每日一题》62. Unique Paths 不同路径

    一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为 "Start" ). 机器人每次只能向下或者向右移动一步.机器人试图达到网格的右下角(在下图中标记为 &quo ...

  2. 【动态规划】LeetCode 62. Unique Paths

    LeetCode 62. Unique Paths Solution1:我的未能AC的答案 递归超时了!!! class Solution { public:int uniquePaths(int m ...

  3. [leetcode] 62 Unique Paths (Medium)

    原题链接 字母题 : unique paths Ⅱ 思路: dp[i][j]保存走到第i,j格共有几种走法. 因为只能走→或者↓,所以边界条件dp[0][j]+=dp[0][j-1] 同时容易得出递推 ...

  4. [Leetcode]62. Unique Paths

    62. Unique Paths 本题难度: Easy Topic: Dynamic Programming Description A robot is located at the top-lef ...

  5. leetcode每日刷题计划-简单篇day8

    leetcode每日刷题计划-简单篇day8 今天是纠结要不要新买手机的一天QAQ想了想还是算了吧,等自己赚钱买,加油 Num 70 爬楼梯 Climbing Stairs class Solutio ...

  6. Leetcode每日一题:171.excel-sheet-column-number(Excel表列序号)

    思路:就是168题的反命题,进制的方式完美解决: Leetcode每日一题:168.excel-sheet-column-title(Excel表名称) class Solution {public: ...

  7. 【LeetCode每日一题】1723. 完成所有工作的最短时间

    [LeetCode每日一题]1723. 完成所有工作的最短时间 [1] 1723. 完成所有工作的最短时间 [2] 473. 火柴拼正方形 [1] 1723. 完成所有工作的最短时间 题目: 给你一个 ...

  8. leetcode每日一题--雀巢原理;抽屉算法;Quorum机制;分布式应用

    leetcode每日一题 539. 最小时间差 示例 1: 输入:timePoints = ["23:59","00:00"] 输出:1 示例 2: 输入:ti ...

  9. LeetCode每日一题——1812. 判断国际象棋棋盘中一个格子的颜色

    LeetCode每日一题系列 题目:1812. 判断国际象棋棋盘中一个格子的颜色 难度:简单 文章目录 LeetCode每日一题系列 题目 示例 思路 题解 题目 给你一个坐标 coordinates ...

  10. 【LeetCode每日一题】——109.有序链表转换二叉搜索树

    文章目录 一[题目类别] 二[题目难度] 三[题目编号] 四[题目描述] 五[题目示例] 六[题目提示] 七[解题思路] 八[时间频度] 九[代码实现] 十[提交结果] 一[题目类别] 二叉树 二[题 ...

最新文章

  1. IOS分享扩展使用JS脚本
  2. Runtime 系列 3-- 给 category 添加属性
  3. windbg基本简单步骤
  4. 多服务器 elk 搭建 [elasticsearch 7.0 ]
  5. 学习Android移植平台工具介绍的心得体会
  6. 利用 Windows Server 容器攻陷云环境的首款恶意软件现身
  7. C++--第4课 - 函数的升级-下
  8. 直播特效的实现原理与难点
  9. 如何提高软件测试效率
  10. 视频数据丢失怎么办 怎样找回丢失的视频数据
  11. UBUNTU-16.04.07和PREEMPT_RT日志
  12. netty系列之IO基础
  13. 3dsmax导出html,3dsmax导出模型(怎么把3DMax文件导出CAD图纸?)
  14. Django 文档 -- 记录我的Django学习之旅
  15. Revit中添加水平仰视平面图及水平剖面
  16. C#面向对象三大特性(重要)
  17. 深度学习图像处理目标检测图像分割计算机视觉 02--图像特征与描述
  18. 什么是mysql时间戳_什么是mysql 的时间戳
  19. 科目三考试项目分类评判标准
  20. 终于成功修复我的Kindle了!

热门文章

  1. 基于angular实现模拟微信小程序swiper组件
  2. Ajax实例一:利用服务器计算
  3. JavaWeb之Servlet入门(一)
  4. C++设计模式--观察员
  5. TFS数据服务器启动优化
  6. 最快的存储过程分页 50W
  7. JZOJ 3515. 软件公司
  8. ZT 为什么pthread_cond_t要和pthread_mutex_t同时使用 || pthread/Linux多线程编程
  9. prompt不生效之解决
  10. 实验二 软件工程个人项目