0
点赞
收藏
分享

微信扫一扫

Day35 不同路径

一个机器人位于一个 m * n 网格的左上角 (起始点在下图中标记为 “Start” )。 机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为 “Finish” )。问总共有多少条不同的路径?

https://leetcode-cn.com/problems/unique-paths/

示例1:

示例2:

示例3:

示例4:

提示:

Java解法

public static int uniquePaths2(int m, int n) {
    long ans = 1;
    for (int x = n, y = 1; y < m; ++x, ++y) {
        ans = ans * x / y;
    }
    return (int) ans;
}

官方解

https://leetcode-cn.com/problems/unique-paths/solution/bu-tong-lu-jing-by-leetcode-solution-hzjf/

  1. 动态规划

    • 时间复杂度:O(mn)
    • 空间复杂度:O(mn)
  2. 组合数学

    • 时间复杂度:O(min(m,n))
    • 空间复杂度:O(1)
举报

相关推荐

0 条评论