public class test28 {
public static void rotate(int[][] matrix){
int a =0;
int b =0;
int c = matrix.length-1;
int d = matrix[0].length-1;
while (a < c){//由于是正方形,所以行越界列一定越界
rotateEdge(matrix , a++ , b++ , c-- ,d--);
}
}
public static void rotateEdge(int[][] m, int a, int b, int c,int d){
int tmp = 0;
for(int i =0 ; i < d-b ;i++){//有多少组次
//m[a][b+i]上面一组
//m[a+i][d]右边一组
//m[c][d-i]下面一组
//m[c-i][b]左边一组
//然后不断组与组变换解决
tmp = m[a][b+i];
m[a][b+i] = m[c-i][b];
m[c-i][b] = m[c][d-i];
m[c][d-i] = m[a+i][d];
m[a+i][d] =tmp;
}
}
}
原地旋转正方形矩阵
听风客12024-08-06 9:40
相关推荐
Mahir086 小时前
Spring 循环依赖深度解密:从问题本质到三级缓存源码级解析RyFit7 小时前
SpringAI 常见问题及解决方案大全石山代码7 小时前
C++ 内存分区 堆区心中有国也有家7 小时前
cann-recipes-infer:昇腾 NPU 推理的“菜谱集合”绝知此事8 小时前
【算法突围 01】线性结构与哈希表:后端开发的收纳术无风听海8 小时前
C# 隐式转换深度解析碧海银沙音频科技研究院8 小时前
通话AEC与语音识别AEC的软硬回采链路一只大袋鼠8 小时前
Git 进阶(二):分支管理、暂存栈、远程仓库与多人协作csdn_aspnet8 小时前
Python 算法快闪 LeetCode 编号 70 - 爬楼梯