(words, map = new Map())
| 7 | * @return {string[][]} |
| 8 | */ |
| 9 | var groupAnagrams = (words, map = new Map()) => { |
| 10 | if (!words.length) return []; |
| 11 | |
| 12 | groupWords(words, map); /* Time O(N * (K * log(K)) | Space O(N * K) */ |
| 13 | |
| 14 | return [...map.values()]; /* Time O(N) | Space O(N * K) */ |
| 15 | }; |
| 16 | |
| 17 | var groupWords = (words, map) => { |
| 18 | for (const original of words) { |
nothing calls this directly
no test coverage detected