728x90
문제
정수가 들어 있는 배열 num_list가 매개변수로 주어집니다. num_list의 원소의 순서를 거꾸로 뒤집은 배열을 return하도록 solution 함수를 완성해주세요.
해결 과정
두가지 방법으로 풀었다.
첫번째는 for문을 이용해서
두번째는 reverse 함수를 이용해서 풀었다.
👆🏻 for문을 이용한 해결
우선 답을 작성할 배열을 하나 만든다.
for문을 이용하여 작성한다. 여기서 for문을 작성할 때 변형이 필요하다.
변형이 필요하다는게 무슨말이냐? 배열을 뒤집기 위한 변형이다.
for(let i = num_list.length-1; i >= 0; i--)
변수 선언문(할당문)은 i = num_list.length -1을 했다.
왜 num_list.length -1을 했을까? 🤔
그 이유는 배열의 인덱스가 0부터 시작하기 때문이다.
배열의 인덱스는 0부터 시작한다.
배열의 길이는 1부터 시작한다.
만일 배열의 길이가 5라면 인덱스는 0, 1, 2, 3, 4이다.
따라서 인덱스는 배열의 길이에 -1을 해야 배열의 마지막 요소에 접근할 수 있다.
한마디로 역순으로 접근하려면 -1을 해야한다.
조건식에서는 배열의 인덱스가 0부터 시작하기 때문에 >=을 했다.
증감식에서는 i--을 해야 1씩 감소하기 때문에 i--로 작성했다.
그리고 push를 통해 빈배열에 넣어줘 풀었다.
✌🏻.reverse를 이용하여 풀기
.reverse를 이용하면 배열을 뒤집어 풀 수 있다.
정답
// ### for문을 이용한 풀이 ###
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();
}
6m
728x90
'⌨️ 프로그래머스 > 코딩테스트 입문' 카테고리의 다른 글
[프로그래머스] 특정 문자 제거하기 (0) | 2024.02.23 |
---|---|
[프로그래머스] 나이 출력 🔢 (0) | 2024.02.18 |
[프로그래머스] 아이스 아메리카노 ☕ (1) | 2024.02.18 |
[프로그래머스] 옷가게 할인 받기 👕👖 (0) | 2024.02.17 |
[프로그래머스] 배열의 평균값 (0) | 2024.02.17 |