Skip to content

Commit f0b287e

Browse files
committed
group anagram solution
1 parent 179480a commit f0b287e

File tree

1 file changed

+23
-0
lines changed

1 file changed

+23
-0
lines changed

โ€Žgroup-anagrams/yeeZinu.jsโ€Ž

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
/**
2+
* @param {string[]} strs
3+
* @return {string[][]}
4+
*/
5+
var groupAnagrams = function (strs) {
6+
// ์ •๋‹ต ๊ฐ์ฒด
7+
let ans = {};
8+
9+
for (let s of strs) {
10+
// strs ๋ฐฐ์—ด์—์„œ ๋ฐ›์•„์˜จ s๋ฅผ ํ•˜๋‚˜์”ฉ ์ชผ๊ฐœ์„œ ์ •๋ ฌ, ๋‹ค์‹œ ํ•˜๋‚˜๋กœ ๋ญ‰์นจ
11+
let key = s.split('').sort().join('');
12+
13+
// ๋งŒ์•ฝ ์ •๋‹ต ๊ฐ์ฒด์— ํ˜„์žฌ ๋‹จ์–ด๊ฐ€ ์—†๋‹ค?
14+
if (!ans[key]) {
15+
// ํ•ด๋‹น ๊ฐ’์„ ๋นˆ ๋ฐฐ์—ด๋กœ ์ดˆ๊ธฐํ™”
16+
ans[key] = [];
17+
}
18+
// ํ•ด๋‹น ๊ฐ’ ๋ฐฐ์—ด์— ์ดˆ๊ธฐ ๋‹จ์–ด ์ถ”๊ฐ€.
19+
ans[key].push(s);
20+
}
21+
// ๊ฐ์ฒด์— ๊ฐ’์„ ์ถ”๊ฐ€ํ•œ ๊ฒƒ์ด๊ธฐ ๋•Œ๋ฌธ์— Object.value()๋ฅผ ์‚ฌ์šฉํ•ด์„œ ์—ด๊ฑฐ ๊ฐ€๋Šฅํ•œ ๋ฐฐ์—ด๋กœ ๋ฆฌํ„ด
22+
return Object.values(ans);
23+
};

0 commit comments

Comments
ย (0)