原地旋转正方形矩阵

复制代码
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;
        }
    }
}
相关推荐
oak隔壁找我10 小时前
JVM常用调优参数
java·后端
蝎子莱莱爱打怪14 小时前
OpenClaw 从零配置指南:接入飞书 + 常用命令 + 原理图解
java·后端·ai编程
狼爷15 小时前
Go 没有 override?别硬套继承!用接口+嵌入,写更清爽的“覆盖”逻辑
java·go
会员源码网17 小时前
使用`mysql_*`废弃函数(PHP7+完全移除,导致代码无法运行)
后端·算法
木心月转码ing18 小时前
Hot100-Day10-T438T438找到字符串中所有字母异位词
算法
小兔崽子去哪了18 小时前
Java 自动化部署
java·后端
ma_king18 小时前
入门 java 和 数据库
java·数据库·后端
后端AI实验室18 小时前
我用Cursor开发了3个月,整理出这套提效4倍的工作流
java·ai
HelloReader18 小时前
Wi-Fi CSI 感知技术用无线信号“看见“室内的人
算法
颜酱21 小时前
二叉树分解问题思路解题模式
javascript·后端·算法