0
여기에서 기본 논리를 이해하려고합니다. 예를 들어, 'n'은 무엇을 나타 냅니까? 이것이 어떻게 작동하는지 간단한 설명을 주면 좋을 것입니다.행렬을 90도 회전하는 방법을 이해하십시오.
public static void rotate(int[][] matrix, int n) {
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]; // save top
// left -> top
matrix[first][i] = matrix[last-offset][first];
// bottom -> left
matrix[last-offset][first] = matrix[last][last - offset];
// right -> bottom
matrix[last][last - offset] = matrix[i][last];
// top -> right
matrix[i][last] = top; // right <- saved top
}
}
}
은'n'의 차 행렬의 크기이고, 그 다음
M
는A
을 덮어 다음P
는D
마침내top
D
값을 겹쳐 사용P
을 덮어이어서, 덮어M
. – gaborschandroid와 (과) 어떤 관련이 있습니까? – Kiloreux
은 n 열 또는 행의 크기입니까? – user3730244