(java)프로그래머스 코딩 테스트 - 배열 뒤집기

navelop·2023년 11월 7일
0

TIL(CODE)

목록 보기
15/20

배열 뒤집기
처음 시도했던 방법이 헷갈려서 다른 사람의 풀이를 참고했다.

class Solution {
    public int[] solution(int[] num_list) {
    
    	// 배열 생성
        int[] answer = new int[num_list.length];
        
        for(int i = 0; i< num_list.length; i++){
            answer[i] = num_list[num_list.length-i-1];
        }
        return answer;
    }
}

♾️
1. 배열 생성 (length 이용)
2. for문을 사용한 조건 > 0부터 num_list.length까지 i 증가시키며 반복

(int i = 0; i< num_list.length; i++){
answer[i] = num_list[num_list.length-i-1];
num_list.length - i - 1는 num_list 배열의 뒤에서부터 값을 가져오는 인덱스
ex) 배열 길이 3일 때
(i = 0) 3 - 0 - 1 = [2]
(i = 1) 3 - 1 - 1 = [1]
(i = 2) 3 - 2 - 1 = [0]```



⬇️이전 코드

class Solution {
    public int[] solution(int[] num_list) {
        int[] answer = new int[num_list.length];// 배열 크기(길이)만큼 생성
        int index = 0; // 인덱스 변수 초기화 - 배열 순서 추적하기 위함

        // 반복을 배열의 끝 인덱스부터 시작
        // (길이 - 1, i-- : 후위 감소 연산자)
        for (int i = num_list.length - 1; i >= 0; i--) {
            answer[index] = num_list[i];
            index++; // 인덱스 순서는 변함 X
        }
        return answer;
    }
}

0개의 댓글