SG의 개발 공부로그

배열 뒤집기 [프로그래머스 코딩테스트 javascript] 본문

CodingTest

배열 뒤집기 [프로그래머스 코딩테스트 javascript]

DebeloperSG 2023. 1. 30. 22:59
728x90

배열 뒤집기

 

 

문제 설명

정수가 들어 있는 배열 num_list가 매개변수로 주어집니다. num_list의 원소의 순서를 거꾸로 뒤집은 배열을 return 하도록 solution 함수를 완성해 주세요.

 

 

제한사항

  • 1 ≤ num_list의 길이 ≤ 1,000
  • 0 ≤ num_list의 원소 ≤ 1,000

 

 

입출력 예

num_list result
[1, 2, 3, 4, 5] [5, 4, 3, 2, 1]
[1, 1, 1, 1, 1, 2] [2, 1, 1, 1, 1, 1]
[1, 0, 1, 1, 1, 3, 5] [5, 3, 1, 1, 1, 0, 1]

 

입출력 예 설명

입출력 예 #1

  • num_list가 [1, 2, 3, 4, 5]이므로 순서를 거꾸로 뒤집은 배열 [5, 4, 3, 2, 1]을 return 합니다.

 

입출력 예 #2

  • num_list가 [1, 1, 1, 1, 1, 2]이므로 순서를 거꾸로 뒤집은 배열 [2, 1, 1, 1, 1, 1]을 return 합니다.

 

입출력 예 #3

  • num_list가 [1, 0, 1, 1, 1, 3, 5]이므로 순서를 거꾸로 뒤집은 배열 [5, 3, 1, 1, 1, 0, 1]을 return 합니다.

 

 

풀이

반복문을 처음부터 말고 배열의 길이부터 i를 돌려서 0이 될 때까지 증감시켰다.

그래서 배열의 맨 뒷 index 순으로 돌면서 answer에 push 해주었다. 

function solution(num_list) {
  let answer = [];
  for (let i = num_list.length - 1; i >= 0; i--) {
    answer.push(num_list[i]);
  }
  return answer;
}

 

 

다른 풀이

reverse() 함수 = 배열의 순서를 거꾸로 만들어 주는 내장함수를 활용.

배열을 거꾸로 뒤집고, 그 배열을 가리키는 참조값을 반환한다. 

(체크: 이 함수를 실행시키면 원본 배열이 변형된다.)

function solution(num_list) {
    return num_list.reverse()
}
728x90