기타

[LeetCode] Group Anagrams

mark340 2023. 2. 4. 13:50

 

 

const groupAnagrams = function(strs) {

  const data = {}; // 단어를 키로, anagram 단어들을 값으로 가진다.
  const result = []; // 리턴할 결과를 저장하는 배열
  
  for(let str of strs) { // 주어진 단어 배열을 반복문으로 돌린다.
    const word = str.split('').sort().join(''); // 주어진 단어를 쪼개고 정렬하고 합쳐서 key가 될 값으로 만든다.
    if (!data[word]) data[word] = []; // data에 없다면 초기화를 해주고,
    data[word].push(str); // 추가한다.
  }
  
  for(let key in data) {
    result.push(data[key]); // 반환할 값을 만든다.
  }
  
  return result;
};