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
相关推荐
马士兵教育7 小时前
Java还有前景吗?Java+AI大模型学习路线及项目?youngerwang7 小时前
【从搬运工到协处理器:网卡芯片架构、算法、验证与边缘演进深度剖析】snow@li8 小时前
Java:理解 Gradle / 后端项目的管家 / 打包SpringBoot 应用 / 完成编译、下载依赖、运行测试、打包 JAR/WAR / 速查表KaMeidebaby8 小时前
卡梅德生物技术快报|纯化重组蛋白实操详解云烟成雨TD8 小时前
Spring AI 1.x 系列【57】动态工具发现:Tool Search Toolzfoo-framework8 小时前
[修改代码使用]codex官方app中使用中转(不需要cc-switch) 1.config.toml 2.sk方式登录逍遥德8 小时前
MQTT教程详解-05.SpringBoot集成mqtt client 性能分析dingzd958 小时前
跨境社媒运营越到后面 越比拼账号的表达稳定性云烟成雨TD9 小时前
Spring AI 1.x 系列【54】Retry 机制分析weixin_523185329 小时前
Collections.unmodifiableMap详解:真的不可修改吗?