언젠가는 펼쳐 볼 아카이브

[Programmers] 단어 변환 본문

IT/Programmers

[Programmers] 단어 변환

개발자희망생고롸파덕 2024. 3. 20. 14:46

사용언어 : javascript

lv.3

문제풀이 소요 시간 : 56분 49초

유형 : DFS/BFS

 

#문제

출처 : 프로그래머스

#제출코드

function solution(begin, target, words) {
    let visited = [];
    let queue = [];
    
    if(!words.includes(target)) return 0;
    
    queue.push([begin, 0]);
    
    while(queue.length){
        let [result, count] = queue.shift();
        
        if(result === target) return count;
        
        words.forEach(word => {
            if(!visited.includes(word)){
                let equalCount = 0;
                
                for(let i=0; i<word.length; i++){
                    if(word[i] !== result[i]) equalCount+=1;
                }
                
                if(equalCount ===1){
                    queue.push([word, ++count]);
                    visited.push(word);
                } 
            }
        })
    }
    
    return answer;
}

'IT > Programmers' 카테고리의 다른 글

[Programmers] 이중우선순위큐  (0) 2024.03.20
[Programmers] 정수 삼각형  (0) 2024.03.20
[Programmers] 여행경로  (0) 2024.03.20
[Programmers] 기능개발  (0) 2024.03.18
[Programmers] 네트워크  (0) 2024.03.18