数组11:旋转图像


思路

第 i 圈的遍历方式为:从第 i 列开始,遍历第 i 行,i < length - i -1

第一圈从第一列遍历第一行至倒数第二个元素

第二圈从第二列遍历第二行至倒数第三个元素

代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
public void rotate(int[][] matrix) {
int length = matrix.length;
for (int i = 0; i < length / 2; i++) {
int currenLength = length - i - 1;
for (int j = i; j < currenLength ; j++) {
int index = length - j - 1;
int temp = matrix[i][j];
matrix[i][j] = matrix[index][i];
matrix[index][i] = matrix[currenLength][index];
matrix[currenLength][index] = matrix[j][currenLength];
matrix[j][currenLength] = temp;
}
}
}

← Prev MySQL查询技巧 | 数组2:买卖股票的最佳时机II Next →