[JavaScript] Lv0 - 순서 바꾸기

Moon·2025년 1월 20일
0
post-thumbnail

순서 바꾸기

문제 설명

정수 리스트 num_list와 정수 n이 주어질 때, num_list를 n 번째 원소 이후의 원소들과 n 번째까지의 원소들로 나눠 n 번째 원소 이후의 원소들을 n 번째까지의 원소들 앞에 붙인 리스트를 return하도록 solution 함수를 완성해주세요.


제한사항

  • 2 ≤ num_list의 길이 ≤ 30
  • 1 ≤ num_list의 원소 ≤ 9
  • 1 ≤ n ≤ num_list의 길이

입출력 예

num_listnresult
[2, 1, 6]1[1, 6, 2]
[5, 2, 1, 7, 5]3[7, 5, 5, 2, 1]

입출력 예 설명

입출력 예 #1

  • [2, 1, 6]에서 첫 번째 이후의 원소는 [1, 6]이고 첫 번째까지의 원소는 [2]입니다. 두 리스트를 이어 붙이면 [1, 6, 2]가 됩니다.

입출력 예 #2

  • [5, 2, 1, 7, 5]에서 세 번째 이후의 원소는 [7, 5]이고 세 번째까지의 원소는 [5, 2, 1]입니다. 두 리스트를 이어 붙이면 [7, 5, 5, 2, 1]가 됩니다.

function solution(num_list, n) {
    // num_list를 n번째 원소를 기준으로 순서를 바꿔 반환
    return [...num_list.slice(n), ...num_list.slice(0, n)];
}

// 입출력 예 테스트
console.log(solution([2, 1, 6], 1)); // [1, 6, 2]
console.log(solution([5, 2, 1, 7, 5], 3)); // [7, 5, 5, 2, 1]

코드 설명

  1. slice 메서드:
    • num_list.slice(n):
      • 배열에서 n번째 원소 이후의 요소를 모두 추출합니다.
      • 예: num_list = [2, 1, 6], n = 1num_list.slice(1)[1, 6].
    • num_list.slice(0, n):
      • 배열의 첫 번째부터 n번째 원소 이전까지의 요소를 추출합니다.
      • 예: num_list = [2, 1, 6], n = 1num_list.slice(0, 1)[2].
  2. ... (스프레드 연산자):
    • [...num_list.slice(n), ...num_list.slice(0, n)]:
      • 두 배열을 결합하여 새로운 배열을 생성합니다.
      • 예: [1, 6][2]를 결합 → [1, 6, 2].
  3. 결과 반환:
    • 새로 생성된 배열을 반환합니다.
profile
MOON.DEVLOG

0개의 댓글