import java.util.Arrays;

/**
* You are given an n x n 2D matrix representing an image. Rotate the image by 90 degrees (clockwise). Follow up:
Could you do this in-place? 翻转二维数组,思路是把数组分成length/2层,每层分别翻转,左边的到上边,下边的到左边,右边的到下边,上边的到右边
每层也有一个循环,设置一个中间量,这层的数一个一个交换,注意每层循环的次数(就是这层每条边的数量-1)
*/
public class Q48RotateImage {
public static void main(String[] args) {
int[][] matrix = new int[][]{{1,2,3,4,5},{6,7,8,9,10},{11,12,13,14,15},{16,17,18,19,20},{21,22,23,24,25}};
rotate(matrix);
for (int[] num :
matrix) {
System.out.println(Arrays.toString(num));
} }
public static void rotate(int[][] matrix) {
int temp;
int l = matrix.length;
for (int i = 0; i < l / 2; i++) {
for (int j = 0; j < l-1-(2*i); j++) {
temp = matrix[i][i+j];
matrix[i][i+j] = matrix[l-1-i-j][i];
matrix[l-1-i-j][i] = matrix[l-1-i][l-1-i-j];
matrix[l-1-i][l-1-i-j] = matrix[i+j][l-1-i];
matrix[i+j][l-1-i] = temp;
}
}
}
}

最新文章

  1. jquery 农历日历 可自适应
  2. Winform 可取消的单选按钮(RadioButton)
  3. 16、C++获取磁盘空间的方法
  4. find_in_set mysql
  5. 【英语】Bingo口语笔记(7) - Break系列
  6. IO笔记
  7. Nginx出现“413 Request Entity Too Large”错误解决方法
  8. ios8 swift开发:显示变量的类名称
  9. linux debian 9 配置postgresSQL数据库
  10. Java中Dom解析xml文档
  11. freemarker自定义标签报错(二)
  12. 后台返回null iOS
  13. Java的二分搜索树
  14. npm ERR! Unexpected end of JSON input while parsing near...错误
  15. 20165228 2017-2018-2 《Java程序设计》第6周学习总结
  16. JavaScript概念梳理
  17. [leetcode]278. First Bad Version首个坏版本
  18. 2018.09.27 bzoj2510: 弱题(概率dp+循环矩阵优化)
  19. JY播放器【蜻蜓FM电脑端,附带下载功能】
  20. 自动测试工具agitarOne 初体验之-MockingBird的使用

热门文章

  1. 将 python3 添加到环境变量(ubuntu)
  2. 冲刺随笔——Day_Ten
  3. Toolbar+DrawerLayout+NavigationView的使用
  4. Docker 跨平台在 netCore 中的从入门到部署
  5. Python音视频开发:消除抖音短视频Logo的图形化工具实现
  6. CF392B Tower of Hanoi
  7. Redis5 压力测试结果反馈报告
  8. springboot:异步调用@Async
  9. 一、本地项目部署到GitHub上
  10. monkey在指定的activity里面运行