Array Example

chevron-rightLeetCode. Rotate Imagehashtag

Given an image represented by an NxN matrix write a method to rotate the image by 90 degrees. public boolean rotateMatrix(int[][] matrix) { if (matrix.length == 0 || matrix.length != matrix[0].length) return false; int n = matrix.length; for (int layer = 0; layer < n/2; layer++) { int first = layer; int last = n - 1 - layer; for (int i=first; i

1 (temp, top)

2

3 (right)

4

5

6

7 (left)

8

9 (bottom)

  1. λ°°μ—΄μ˜ κ°€μž₯ 자리λ₯Ό μ΄λ™ν•˜λŠ” 방법

for i = 0 to n
    temp = top[i]
    top[i] = left[i]
    left[i] = bottom[i]
    bottom[i] = right[i]
    right[i] = temp    
  1. λ°°μ—΄μ˜ λ‚΄λΆ€ νšŒμ „ (1번과 λ™μΌν•œ 둜직)

  2. Java Code

public static boolean rotateMatrix(int[][] matrix) {
    if (matrix.length == 0 || matrix.length != matrix[0].length) return false;
    int n = matrix.length;
    for (int layer = 0; layer < n/2; layer++) {
        int first = layer;
        int last = n - 1 - layer;
        for (int i = first; i < last; i++) {
            int offset = i - first;
            int top = matrix[first][i];
            matrix[first][i] = matrix[last-offset][first];
            matrix[last-offset][first] = matrix[last][last-offset];
            matrix[last][last-offset] = matrix[i][last];
            matrix[i][last] = top;
        }
    }
    return true;
}
    

Last updated