力扣刷题之——旋转矩阵

给你一幅由 N × N 矩阵表示的图像,其中每个像素的大小为 4 字节。请你设计一种算法,将图像旋转 90 度。
不占用额外内存空间能否做到?

示例 1:

给定 matrix =
[
[1,2,3],
[4,5,6],
[7,8,9]
],

原地旋转输入矩阵,使其变为:
[
[7,4,1],
[8,5,2],
[9,6,3]
]

作者:力扣 (LeetCode)
链接:https://leetcode.cn/leetbook/read/array-and-string/clpgd/
来源:力扣(LeetCode)
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

思路

最简单的方法就是找规律。
我们可以发现,矩阵旋转90度后,矩阵发生了什么变化。
拿例1来说
第一列中的1,4,7变成了第一行的7,4,1.
第二列中的2,5,8变成了第二行的8,5,2

so,我们可以找到规律
第i行第j列的元素,变成了第j行第(n-i-1)个元素

核心代码:`

new_array[j][n-i

你可能感兴趣的:(矩阵,leetcode,算法)