From 35d30c93dd7c18893c77f96b9c1daa6b58649ac3 Mon Sep 17 00:00:00 2001 From: Luo <82520819+Jerry-306@users.noreply.github.com> Date: Sun, 3 Oct 2021 10:33:51 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=200062=20=E4=B8=8D=E5=90=8C?= =?UTF-8?q?=E8=B7=AF=E5=BE=84=20JavaScript=E7=89=88=E6=9C=AC=20=E5=8F=A6?= =?UTF-8?q?=E4=B8=80=E7=A7=8D=E5=86=99=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 我认为将dp数组的值全部初始化为1是可以的,因为由状态转移方程:dp[i][j] = dp[i-1][j] + dp[i][j-1] 可知,当前dp[i][j]的值与其自身的原始值并无联系。所有将dp的所有值都初始化为1,可以减少代码量,同时也不会影响代码的整体思路。 --- problems/0062.不同路径.md | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/problems/0062.不同路径.md b/problems/0062.不同路径.md index af3a8f40..31896fd1 100644 --- a/problems/0062.不同路径.md +++ b/problems/0062.不同路径.md @@ -327,6 +327,25 @@ var uniquePaths = function(m, n) { return dp[m - 1][n - 1] }; ``` +>版本二:直接将dp数值值初始化为1 +```javascript +/** + * @param {number} m + * @param {number} n + * @return {number} + */ +var uniquePaths = function(m, n) { + let dp = new Array(m).fill(1).map(() => new Array(n).fill(1)); + // dp[i][j] 表示到达(i,j) 点的路径数 + for (let i=1; i