
本题最直观的思路就是再new一个二维数组,然后将原数组的第i行j列赋值给新数组的j行n-i-1列即可。 java代码如下:
- class Solution {
- public void rotate(int[][] matrix) {
- int n = matrix.length;
- int[][] new_matrix = new int[n][n];
- for(int i=0; i
- for(int j=0; j
- new_matrix[j][n-i-1] = matrix[i][j];
- }
- }
- for(int i=0; i
- for(int j=0; j
- matrix[i][j] = new_matrix[i][j];
- }
- }
- }
- }
方法二:原地修改
还可以原地修改,先将数组进行转置,再将数组每一行进行反转即可。java代码如下:
- class Solution {
- public void rotate(int[][] matrix) {
- //先转置
- int n = matrix.length;
- for(int i=0; i
- for(int j=i; j
- int temp = matrix[i][j];
- matrix[i][j] = matrix[j][i];
- matrix[j][i] = temp;
- }
- }
- //再将每一行反转
- for(int i=0; i
- for(int j=0; j
2; j++){ - int temp = matrix[i][j];
- matrix[i][j] = matrix[i][n-j-1];
- matrix[i][n-j-1] = temp;
- }
- }
- }
- }
-
相关阅读:
LibOpenCM3(五) 基础功能: 系统时钟, GPIO, 定时器
【无标题】win10 server 服务器,安装mongodb时,遇到无法定位程序输入点BCryptHash , 降低mongodb 版本 4.2.3
Oracle笔记-对ROWNUM的一次理解(简单分页)
【Linux】shell命令以及运行原理和Linux权限详解
基于STC12C5A60S2系列1T 8051单片机的液晶显示器LCD1602显示用户自定义字符应用
网络爬虫--伪装浏览器
element-ui的 el-option如果label为空显示value问题处理
一文读懂野指针
代码随想录算法训练营第四十九天丨 动态规划part12
day16学习总结
-
原文地址:https://blog.csdn.net/m0_61028090/article/details/133578410