[프로그래머스] 배열 회전시키기

가오리·2023년 3월 7일
0

coding-test

목록 보기
86/107
post-thumbnail

[프로그래머스] 배열 회전시키기

🔗 문제

정수가 담긴 배열 numbers와 문자열 direction가 매개변수로 주어집니다. 배열 numbers의 원소를 direction방향으로 한 칸씩 회전시킨 배열을 return하도록 solution 함수를 완성해주세요.

⚠️ 제한사항

  • 3 ≤ numbers의 길이 ≤ 20
  • direction은 "left" 와 "right" 둘 중 하나입니다.

📲 입출력

numbersdirectionresult
[1, 2, 3]"right"[3, 1, 2]
[4, 455, 6, 4, -1, 45, 6]"left"[455, 6, 4, -1, 45, 6, 4]

입출력 예 #1

  • numbers 가 [1, 2, 3]이고 direction이 "right" 이므로 오른쪽으로 한 칸씩 회전시킨 [3, 1, 2]를 return합니다.

입출력 예 #2

  • numbers 가 [4, 455, 6, 4, -1, 45, 6]이고 direction이 "left" 이므로 왼쪽으로 한 칸씩 회전시킨 [455, 6, 4, -1, 45, 6, 4]를 return합니다.

💡풀이 방법

  • right라면 마지막 요소를 맨 앞에, left라면 첫번째 요소를 마지막에 두고 리턴한다.
    - keyword: push, pop, shift, unshift

💻 코드

function solution(numbers, direction) {
    if(direction === "right"){
        const temp = numbers[numbers.length-1];
        numbers.pop()
        numbers.unshift(temp)
    }
    else{
        const temp = numbers[0];
        numbers.shift()
        numbers.push(temp)
    }
    return numbers;
}
function solution(numbers, direction) {
  if (direction === 'right') {
    numbers.unshift(numbers.pop());
  } else {
    numbers.push(numbers.shift());
  }
  return numbers;
}
profile
가오리의 코딩일기

0개의 댓글