정수 리스트 num_list
와 정수 n
이 주어질 때, num_list
를 n
번째 원소 이후의 원소들과 n
번째까지의 원소들로 나눠 n
번째 원소 이후의 원소들을 n
번째까지의 원소들 앞에 붙인 리스트를 return
하도록 solution
함수를 완성하는 문제이다.
function solution(num_list, n) {
const arr1 = num_list.slice(0, n);
const arr2 = num_list.slice(n, num_list.length);
return arr2.concat(arr1);
}
slice
와 concat
메서드를 사용하여 원본 배열을 변경하지 않고, 주어진 인덱스를 기준으로 배열을 두 부분으로 나누고 다시 합치는 안전하고 명확한 접근 방식이다.const solution = (num_list, n) => num_list.splice(n).concat(num_list);
splice
와 concat
을 사용하여 더 간결하지만, splice
는 원본 배열을 수정하는 부작용이 있다.const arr = [3, 4, 5, 1, 2];
const part = arr.splice(3);
console.log(part); // [ 1, 2 ]
console.log(arr); // [ 3, 4, 5 ]
const newArr = part.concat(arr);
console.log(newArr); // [ 1, 2, 3, 4, 5 ]
두 방법 모두 문제를 해결하는 데 효과적이지만, 원본 데이터의 보존 여부와 코드의 간결성에 따라 선택할 수 있다.