Edit Distance LeetCode solution in JavaScript
1var minDistance = function (word1, word2) {2const m = word1.length;3const n = word2.length;45const memo = new Array(m).fill().map(() => new Array(n));6const dfs = (i = m - 1, j = n - 1) => {7if (i < 0 && j < 0) return 0;8if (i < 0 && j >= 0) return j + 1;9if (i >= 0 && j < 0) return i + 1;10if (memo[i][j] !== undefined) return memo[i][j];1112if (word1[i] === word2[j]) {13return (memo[i][j] = dfs(i - 1, j - 1));14}1516return (memo[i][j] =171 + Math.min(...[dfs(i, j - 1), dfs(i - 1, j), dfs(i - 1, j - 1)]));18};1920return dfs();21};