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

Dreamer·2024년 1월 30일
0
post-thumbnail

문제

배열 회전시키기 문제

정수가 담긴 배열 -> int[] numbers
String direction -> right 또는 left 중 하나
배열을 오른쪽 또는 왼쪽 방향으로 한칸씩 회전시킨 배열 출력

나의 풀이

어떻게 풀지?
배열 이름 numbers -> arr로 사용하기 편하게 변경
회전 시킨 배열을 담을 result를 만들고,
direction에 따라 조건 걸어준다.
direction이 right면, 오른쪽으로 한칸씩 밀고, 마지막 index를 맨 앞으로,
direction이 left면, 왼쪽으로 한칸씩 당기고, 맨 앞 index를 맨 뒤로!

import java.util.*;
class Solution {
    public int[] solution(int[] arr, String direction) {
        
        int[] result = new int[arr.length];
        
        for (int i = 0; i < arr.length; i++) {
            if (direction.equals("right")) {
                if (i >= 0 && i < arr.length - 1) {
                    result[i+1] = arr[i];
                } else {
                    result[0] = arr[arr.length - 1];
                }
            } else {
                if (i > 0 && i < arr.length) {
                    result[i - 1] = arr[i];
                } else {
                    result[arr.length - 1] = arr[0];
                }
            }
        }
        
        return result;
    }
}
profile
Moving forward based on records

0개의 댓글