본문 바로가기
배움 기록/코테 연습

[프로그래머스] 수열과 구간 쿼리 3 : JavaScript

by dygreen 2024. 12. 27.

📌 문제

 

📌 풀이

function solution(arr, queries) {
    var answer = [...arr];
    queries.forEach(query => {
        const a = query[0];
        const b = query[1];
        
        const temp = answer[a];
        answer[a] = answer[b]
        answer[b] = temp
    })
    
    return answer
}
  • temp 변수를 사용하여 answer[a]의 값을 임시로 저장 → 값이 덮어쓰여 지는 것을 방지

 

'구조 분해 할당' 풀이

function solution(arr, queries) {
    queries.forEach(([a, b]) => {
        [arr[a], arr[b]] = [arr[b], arr[a]];
    })
    return arr;
}
  • 구조 분해 할당을 하면 위의 풀이처럼 temp 변수를 따로 만들지 않고도 서로의 값을 바꿀 수 있다.

 

https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Operators/Destructuring_assignment

728x90

댓글