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
相关推荐
一只小小Java31 分钟前
Naocs本地部署&安装3.2.3+Spring boot 3.2.0JL1537 分钟前
Spring Boot vs Gin:Java 人搭第一个 Go REST API神明不懂浪漫1 小时前
【第七章】Java中的常用类梓䈑5 小时前
【算法题攻略】BFS 解决FloodFill 算法、最短路问题、多源BFS 和 拓扑排序Adios7947 小时前
设置交集大小至少为2Jelena1577958579210 小时前
电商运营分析数据比价接口实战:多平台价格监控与智能决策系统神明不懂浪漫11 小时前
【第五章】Java中的继承与多态AI多Agent协作实战派13 小时前
AI多Agent协作系统实战(十七):凌晨4点,我的AI系统在“假装工作“——3个bug同时爆炸的5小时gaolei_eit13 小时前
Java+Ai+vue