고득점 Kit [해시] - 전화번호목록

세나정·2023년 4월 29일
0
post-thumbnail

문제

풀이

원래 프로그래머스에는 JS 풀이가 없지만
HashTable의 가장 좋은 예시인 것 같아 JS 푼 방법이다

function solution(phone_book) {
    const hashMap = {}
     phone_book = ["119", "97674223", "1195524421"]
    // 각각의 값들을 뽑아 1로 매칭
    for(let phoneNumber of phone_book) {
        hashMap[phoneNumber] = 1
    }
    
    for(let phoneNumber of phone_book) {
        let temp = ""
        
        // 공백을 제거한 값을 한 개씩 빼 temp에 넣고
        for(let str of phoneNumber) {
            
            temp += str
			
            // 존재하지 않으면 true (접두어가 아닌경우)
            if(hashMap[temp] && temp !== phoneNumber) {
                return true
            }
        }
    }
    
    // 존재하는 경우 false (접두어인경우)
    return false
}
profile
기록, 꺼내 쓸 수 있는 즐거움

0개의 댓글