您的位置:首页 > 其它

Rotate Image

2016-09-16 03:43 204 查看
You are given an n x n 2D matrix representing an image.

Rotate the image by 90 degrees (clockwise).

Follow up:
Could you do this in-place?

class Solution {
public:
void rotate(vector<vector<int>>& matrix) {
if (matrix.empty() || matrix[0].empty()) return;

int n = matrix.size();
// first swap matrix[i][j] with matrix[m - 1 - i][j]
for (int i = 0; i < n / 2; i++) {
for (int j = 0; j < n; j++)
swap(matrix[i][j], matrix[n - 1 - i][j]);
}
// swap matrix[i][j] with [j][i]
for (int i = 0; i < n; i++) {
for (int j = 0; j < i; j++)
swap(matrix[i][j], matrix[j][i]);
}
}
};
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: