본문 바로가기
  • soldonii's devlog
Javascript 공부/알고리즘 풀이

자바스크립트 알고리즘(4) - maxChar

by soldonii 2019. 8. 26.

*Udemy의 "The Coding Interview Bootcamp: Algorithms + Data Structures" 강의에서 학습한 내용을 정리한 포스팅입니다.

*https://soldonii.github.io에서 작성한 글을 티스토리로 옮겨온 포스팅입니다.

*자바스크립트를 배우는 단계라 오류가 있을 수 있습니다. 틀린 내용은 댓글로 말씀해주시면 수정하겠습니다. 감사합니다. :)


지문

// Given a string, return the character that is most
// commonly used in the string.
// --- Examples
// maxChar("abcccccccd") === "c"
// maxChar("apple 1231111") === "1"

 

1번 풀이 : 문자열로 변환

1. 가장 많이 등장한 횟수(max), 가장 많이 등장한 문자(maxChar), 문자열이 등장한 횟수를 기록할 객체(strMap) 을 세팅한다.

2. for loop으로 strMap을 만든다.

3. strMap을 for loop을 통해 max, maxChar를 구한다.

4. maxChar를 return한다.

function maxChar(str) {
  let max = 0;
  let maxChar = '';
  let strMap = {};
  for (let char of str) {
    strMap[char] = strMap[char] + 1 || 1;
  }

  for (let i in strMap) {
    if (strMap[i] > max) {
      max = strMap[i];
      maxChar = i;
    }
  }
  return maxChar;
}

댓글