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
相关推荐
我命由我1234511 小时前
执行 Gradle 指令报错,无法将“grep”项识别为 cmdlet、函数、脚本文件或可运行程序的名称考虑考虑11 小时前
Sentinel安装轻颂呀11 小时前
约瑟夫环问题凤凰院凶涛QAQ12 小时前
《Java版数据结构 & 集合类剖析》栈与队列:“push/pop 是栈的灵魂,offer/poll 是队列的骨架——四组 API,两种人生”科技大视界13 小时前
投资AI项目,传统尽调不够用了——李章虎律师拆解算法、数据、算力三大雷区郝学胜-神的一滴13 小时前
算法实战:最小k个数——大顶堆的优雅解法Irissgwe13 小时前
算法滑动窗口掘金_答案13 小时前
上线那天,一个 ConcurrentHashMap 差点送走我的 AI 客服——3 天排查 JVM 血泪史怪兽学LLM13 小时前
LeetCode 105. 从前序与中序遍历序列构造二叉树:分治递归思路详解可编程芯片开发13 小时前
基于PI控制的三相整流器控制系统的simulink建模与仿真,包含超级电容充电和电机