Skip to content

Commit 9c3c68d

Browse files
committed
feat: 新增旋转图像算法实现,包含两种不同的旋转方法
1 parent a5694cf commit 9c3c68d

2 files changed

Lines changed: 31 additions & 12 deletions

File tree

leetcode/Study Plan/48. 旋转图像/1.cpp

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -6,17 +6,17 @@
66
*/
77
class Solution {
88
public:
9-
void rotate(vector<vector<int>> &matrix) {
10-
int n = matrix.size();
11-
// 转置
12-
for (int i = 0; i < n; ++i) {
13-
for (int j = 0; j < i; ++j) {
14-
swap(matrix[i][j], matrix[j][i]);
15-
}
16-
}
9+
void rotate(vector<vector<int>>& matrix) {
10+
int n = matrix.size();
11+
// 转置
12+
for(int i = 0;i<n;++i){
13+
for(int j = 0;j<i;++j){
14+
swap(matrix[i][j],matrix[j][i]);
15+
}
16+
}
1717

18-
// 行翻转
19-
for (auto &row : matrix)
20-
ranges::reverse(row);
21-
}
18+
// 行翻转
19+
for(auto &row:matrix)
20+
ranges::reverse(row);
21+
}
2222
};
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
/*
2+
* @Author: tkzzzzzz6
3+
* @Date: 2026-03-22 18:32:49
4+
* @LastEditors: tkzzzzzz6
5+
* @LastEditTime: 2026-03-23 14:06:15
6+
*/
7+
class Solution {
8+
public:
9+
void rotate(vector<vector<int>> &matrix) {
10+
int n = matrix.size(), m = matrix[0].size();
11+
for (int i = 0; i < n; ++i) {
12+
for (int j = i + 1; j < n; ++j) {
13+
swap(matrix[i][j], matrix[j][i]);
14+
// swap(matrix[i][j],matrix[i][m - j - 1]);
15+
}
16+
ranges::reverse(matrix[i]);
17+
}
18+
}
19+
};

0 commit comments

Comments
 (0)