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
相关推荐
Raas10013 小时前
AI网关如何接入?MAI Gateway部署实操教程前端双越老师13 小时前
程序员 1v1 访谈系列第十一期:应届生别做开发Captain1314_李祖团13 小时前
5. MLIR相关语法Rain的Java大神之路13 小时前
面试官让你把 LLM、RAG、Agent、MCP 串起来讲清楚,90% 的 Java 工程师当场露馅老师我太想进步了202613 小时前
【数据结构-1】例解算法复杂度无所谓^_^13 小时前
个人健康管理系统 | Springboot3 | Vue3杨凯凡14 小时前
Spring Boot 的 @Transactional 为什么会失效?从代理、自调用到异常回滚的排查实战tyler_download14 小时前
deepseek后训练算法:位置编码算法RoPE详解1曼岛_14 小时前
[图解密码学]第5章 对称加密基础青少儿编程课堂14 小时前
蓝桥杯·全国青少年信息素养大赛·电子学会C/C++考级:分层图最短路解析