本文主要是介绍LeetCode典型题目系列 48. Rotate Image 旋转图像,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
LeetCode典型题目系列 48. Rotate Image 旋转图像
- LeetCode典型题目系列
- 题目 48. Rotate Image
- 思路
- 编程技巧
- Code (Java)
- 易错点
LeetCode典型题目系列
作为一名学计算机的学生,之前一直少有练习OJ,写博客,维护自己的GitHub的觉悟,说到底还是太懒了。春招以来愈发觉得练习OJ的重要性,于是准备写一些博客,记录自己遇到的典型题目和思考,一方面是给自己的笔记,另一方面给大家参考。个人水平有限,如有谬误请指出,也欢迎大家的讨论。
题目 48. Rotate Image
题目大意是原地旋转二维矩阵,不允许创建新矩阵。
思路
这种二维矩阵的旋转是一类典型题目,写代码时有一些固定的技巧可以使用。
对于给定的 n * n的方阵,从最外层开始处理,每次处理一层,处理完了外层再向里面一层推进,直到未处理的矩阵的size为 0 * 0 或者 1 * 1 结束。
每一层处理的时候可以按照顺时针(本题是按照顺时针旋转)进行。每一层可以看做4组list,以下图为例,分别是黄色框框里的(1, 2)、(3, 6)、(9, 8)、(7, 4)。
每一层要做的就是将4组list里对应位置的数字按照顺时针交换一下。
这篇关于LeetCode典型题目系列 48. Rotate Image 旋转图像的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!