middlemoon

[입문]자바 - 배열 뒤집기. 본문

Algorithm/프로그래머스 Java 입문

[입문]자바 - 배열 뒤집기.

중대경 2025. 8. 21. 18:50

 

 

 

 

답안 )

class Solution {
    public int[] solution(int[] num_list) {
        //int[] backlist = 0;
        int[] backlist = new int[num_list.length];
        int[] answer = {};
        for(int i = 0; i < num_list.length; i++){  
            backlist[i] = num_list[num_list.length - 1 - i];
            System.out.println("==1" + backlist[i]);
        }
        return backlist;
    }
}

 

 

 

 

 

 

과정 )

 

우선 parameter값에 담긴 num_list의 배열을 가져와야만한다.

사실 이때까지는 num_list가 선언이 되어있다 가정을 하고, 주로 배열을 생성할 때 사용할 수 있게끔 

배열 생성(Array Creation) 문법을 사용해준다.

new int[num_list.length] 를 생성해준 뒤, 길이를 num_list.length 만큼 설정해준다.

 

그렇다면 왜 new로 쓰는지 궁금한데, 자바에서 배열은 객체(Object)처럼 취급이 되므로, 

new int[길이]를 해야 실제 배열이 메모리에 만들어진다. 

 

 

answer[i] = num_list[num_list.length - 1 - i];

 

이 코드는 이해를 위해 gpt에 설명된 일부를 가져오도록 한다.

 

  • num_list.length → 배열 길이
    • 예: 길이 5
  • num_list.length - 1 → 마지막 원소의 인덱스
    • 5 - 1 = 4 → 마지막 원소 num_list[4]
  • num_list.length - 1 - i → 반복문에서 i가 0,1,2,…일 때
    • i=0 → 4 → 마지막 원소
    • i=1 → 3 → 뒤에서 두 번째
    • i=2 → 2 → 가운데
    • i=3 → 1 → 뒤에서 네 번째
    • i=4 → 0 → 첫 번째

 

 

int[] answer = {}; 은 리턴값이 아니니 무시하도록 한다.

 

 

 

Comments