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
相关推荐
边境悍匪5 分钟前
蜗牛学苑 Java 智能体学习 Day49|贯穿项目 5 订单下单业务 思维导图复盘鬼手点金8 分钟前
Claude Code示范案例-修复 Bug 工作流一条破秋裤8 分钟前
Linux 进程通信介绍:内存隔离与 IPC 分类Omics Pro11 分钟前
空间组学!医学代谢显微工具Coder-magician16 分钟前
《代码随想录》刷题打卡day44:图论-part02克里斯蒂亚诺更新17 分钟前
理解机器学习的各种算法机核研创社20 分钟前
polo 长袖短裤套装自动化产线:八台机器排队接力小范的技术工坊20 分钟前
大模型学习操作文档(13个核心概念串讲)一个低调的青年29 分钟前
电池健康状态估计(一)Roadinforest31 分钟前
Spring Boot 4 六步入门实录:从 Hello World 到一个能交付的 Todo API