[LeetCode] 189. Rotate Array

lkdcode·2023년 8월 24일

Algorithm

목록 보기
7/47
post-thumbnail

189. Rotate Array


문제 분석

주어진 배열을 k번만큼 순번을 바꾸는 문제


풀이 과정

주어진 배열의 값들을 덱에 담는다.
덱에 있는 숫자들을 k번만큼 뒤의 값을 앞으로 추가하여 순번을 바꿔준다.
덱에 있는 값들을 꺼내 배열을 업데이트해준다.


코드

    public void rotate(int[] nums, int k) {
        Deque<Integer> deque = new ArrayDeque<>();

        for (int num : nums) {
            deque.add(num);
        }
        
        for (int i = 0; i < k; i++) {
            deque.addFirst(deque.pollLast());
        }

        for (int i = 0; i < nums.length; i++) {
            nums[i] = deque.pollFirst();
        }

    }

profile
되면 한다

0개의 댓글