Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

LeetCode 62. Unique Paths #13

Open
Woodyiiiiiii opened this issue Apr 17, 2020 · 0 comments
Open

LeetCode 62. Unique Paths #13

Woodyiiiiiii opened this issue Apr 17, 2020 · 0 comments

Comments

@Woodyiiiiiii
Copy link
Owner

A robot is located at the top-left corner of a m x n grid (marked 'Start' in the diagram below).

The robot can only move either down or right at any point in time. The robot is trying to reach the bottom-right corner of the grid (marked 'Finish' in the diagram below).

How many possible unique paths are there?

Example 1:

Input: m = 3, n = 2
Output: 3
Explanation:
From the top-left corner, there are a total of 3 ways to reach the bottom-right corner:
1. Right -> Right -> Down
2. Right -> Down -> Right
3. Down -> Right -> Right

Example 2:

Input: m = 7, n = 3
Output: 28

空间一维dp数组:

class Solution {
    public int uniquePaths(int m, int n) {
        // space : O(n);
        int[] dp = new int[n];
        dp[0] = 1;
        
        for (int i = 1; i < n; ++i) {
            dp[i] += dp[i - 1];
        }
        for (int i = 1; i < m; ++i) {
            for (int j = 1; j < n; ++j) {
                dp[j] += dp[j - 1];
            }
        }
        
        return dp[n - 1];
    }
}

参考资料:
LeetCode原题

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant