LeetCode62不同路径

题目描述

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

解析

当前位置的数量等于上方的数量加左边的数量。

复制代码
public int uniquePaths(int m, int n) {
        /*
        * 如果左上都存在
        * 当前位置的路径数为上的路径数加左边的路径数
        *  */
        int[][] path = new int[m][n];
        path[0][0] = 1;
        for(int i = 0; i < m; i++) {
            for(int j = 0; j < n; j++) {
                if(j - 1 >= 0) {
                    path[i][j] += path[i][j - 1];
                }
                if(i - 1 >= 0) {
                    path[i][j] += path[i - 1][j];
                }
            }
        }
        return path[m - 1][n - 1];
    }
相关推荐
橘颂TA6 分钟前
【剑斩OFFER】算法的暴力美学——二进制求和
算法·leetcode·哈希算法·散列表·结构与算法
sxlishaobin10 分钟前
设计模式之桥接模式
java·设计模式·桥接模式
model200511 分钟前
alibaba linux3 系统盘网站迁移数据盘
java·服务器·前端
荒诞硬汉27 分钟前
JavaBean相关补充
java·开发语言
提笔忘字的帝国41 分钟前
【教程】macOS 如何完全卸载 Java 开发环境
java·开发语言·macos
2501_941882481 小时前
从灰度发布到流量切分的互联网工程语法控制与多语言实现实践思路随笔分享
java·开发语言
華勳全栈1 小时前
两天开发完成智能体平台
java·spring·go
alonewolf_991 小时前
Spring MVC重点功能底层源码深度解析
java·spring·mvc
地平线开发者1 小时前
征程 6 | cgroup sample
算法·自动驾驶