인프런 커뮤니티 질문&답변

승진님의 프로필 이미지
승진

작성한 질문수

자바스크립트 알고리즘 문제풀이 입문(코딩테스트 대비)

6. 학급 회장(Hash Map)

Map.get 시간복잡도 질문

작성

·

196

0

/**
 * solution
 * @param {array} vote : 투표 배열
 */
function solution(vote) {
    const voteMap = new Map();
    let answer = '';
    let maxCount = 0;
    vote.forEach(function (item) {
        //투표 이력이 없을 경우 set, 있을 경우 카운팅 추가
        voteMap.has(item) ? voteMap.set(item, voteMap.get(item) + 1) : voteMap.set(item, 1);

        if (voteMap.get(item) > maxCount) {
            maxCount = voteMap.get(item);
            answer = item;
        }
    });

    return answer;
}

const answer = solution(['B', 'A', 'C', 'B', 'A', 'C', 'C', 'A', 'C', 'C', 'B', 'D', 'E', 'D', 'E']);
console.log(answer); //C (5)

안녕하세요 저는 max값을 치환할 때 map을 순회하지 않고 map에서 지원하는 get메서드를 사용해서 해당 투표 값을 받아왔는데 시간복잡도에 영향이 가는지 궁금합니다.

답변 1

0

김태원님의 프로필 이미지
김태원
지식공유자

안녕하세요^^

크게 상관은 없을 듯 합니다.

승진님의 프로필 이미지
승진

작성한 질문수

질문하기