{A}
AlgoViz
首页
路线图
题单
教程
题目
可视化
错题本
进度
登录
加载中…
矩阵顺时针旋转
先沿主对角线转置,再逐行左右翻转,即可原地旋转 90°。
矩阵大小 n:
(2–6)
速度:
0.5x
1x
2x
4x
1
2
3
4
5
6
7
8
9
顺时针旋转 3×3 矩阵:先转置再逐行翻转
步骤 1 / 8
顺时针旋转 3×3 矩阵:先转置再逐行翻转
算法代码
复制代码
当前高亮行:
1
(顺时针旋转 3×3 矩阵:先转置再逐行翻转)
1
// 1. 沿主对角线转置
2
for
i in
0
..n:
for
j in i+
1
..n: swap(m[i][j], m[j][i]);
3
// 2. 每行左右翻转
4
for
i in
0
..n:
for
j in
0
..n/
2
: swap(m[i][j], m[i][n-
1
-j]);
5
return
m;