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

박명재님의 프로필 이미지

작성한 질문수

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

14. 가장 긴 문자열

복습을 위해서 다시 풀다가 배웠던 Hash 알고리즘으로 풀어 봤는데 좋지 않은 선택인가요?

작성

·

242

1

코드입니다. 피드백 부탁드립니다~

function solution(s) {
let answer;
let max = Number.MIN_SAFE_INTEGER;
const sH = new Map();

for (let val of s) {
sH.set(val, val.length);
}

for (let [key, val] of sH) {
if (max < val) {
max = val;
answer = key;
}
}

return answer;
}

let str = ['teacher', 'time', 'student', 'beautiful', 'good'];
console.log(solution(str));

답변 3

0

Set이나 Map 같은 자료구조는 꽤 무거워서 부담을 준다고 들었어요.

0

박명재님의 프로필 이미지
박명재
질문자

감사합니다~

0

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

안녕하세요^^

for 문이 한 번만 돌면 되는데 두 번 돌게 하는 것과, Hash 메모리 공간 낭비도 일어나는 위에 방법은 좋은 선택은 아닌것 같습니다.