From 1146e809a82b555a28e52d6b4c8ce16f02f1d643 Mon Sep 17 00:00:00 2001 From: GyuriKim Date: Mon, 28 Jul 2025 11:59:43 +0900 Subject: [PATCH 1/2] valid anagram --- valid-anagram/Grit03.js | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 valid-anagram/Grit03.js diff --git a/valid-anagram/Grit03.js b/valid-anagram/Grit03.js new file mode 100644 index 000000000..9f0c0f1e5 --- /dev/null +++ b/valid-anagram/Grit03.js @@ -0,0 +1,28 @@ +/** + * @param {string} s + * @param {string} t + * @return {boolean} + */ +var isAnagram = function (s, t) { + const sMap = new Map(); + const tMap = new Map(); + for (const str of [...s]) { + sMap.set(str, (sMap.get(str) ?? 0) + 1); + } + + for (const str of [...t]) { + tMap.set(str, (tMap.get(str) ?? 0) + 1); + } + + if (sMap.size === tMap.size) { + let answer = true; + for (let [str, count] of sMap) { + if (!tMap.get(str) || tMap.get(str) !== sMap.get(str)) { + answer = false; + } + } + return answer; + } + + return false; +}; From 9c7a1c529d35b3dbc36085f91054525e646d781b Mon Sep 17 00:00:00 2001 From: GyuriKim Date: Mon, 28 Jul 2025 12:29:00 +0900 Subject: [PATCH 2/2] climbing stairs --- climbing-stairs/Grit03.js | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 climbing-stairs/Grit03.js diff --git a/climbing-stairs/Grit03.js b/climbing-stairs/Grit03.js new file mode 100644 index 000000000..37ffd4bba --- /dev/null +++ b/climbing-stairs/Grit03.js @@ -0,0 +1,20 @@ +/** + * @param {number} n + * @return {number} + */ +var climbStairs = function (n) { + const dp = [0]; + + for (let i = 1; i <= n; i++) { + if (i === 1) { + dp[1] = 1; + continue; + } + if (i === 2) { + dp[2] = 2; + continue; + } + dp[i] = dp[i - 2] + dp[i - 1]; + } + return dp[n]; +};