본문 바로가기

ETC

2차원 배열 회전

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
    public static int[][] Rotate(int[][] key) {
        int n = key.length;
        // 상하 반전
        for (int i = 0; i < n / 2; i++) {
            for (int j = 0; j < n; j++) {
                int temp = key[i][j];
                key[i][j] = key[n - i - 1][j];
                key[n - i - 1][j] = temp;
 
            }
        }
 
        // 대각선 반전
        for (int i = 0; i < n; i++) {
            for (int j = i; j < n; j++) {
                int temp = key[i][j];
                key[i][j] = key[j][i];
                key[j][i] = temp;
            }
        }
        return key;
    }
cs

N * N 배열일 때에 한정한다.

시계 방향으로 90도 회전한다.

 

참고 사이트 : https://bcp0109.tistory.com/150

'ETC' 카테고리의 다른 글

List to Array, Array to List 변환  (0) 2021.08.17