48. 旋转图像
最直接的想法是先转置矩阵,然后翻转每一行
class Solution:
def rotate(self, matrix: List[List[int]]) -> None:
"""
Do not return anything, modify matrix in-place instead.
"""
n = len(matrix[0])
# transpose matrix
for i in range(n):
for j in range(i, n):
matrix[j][i], matrix[i][j] = matrix[i][j], matrix[j][i]
# reverse each row
for i in range(n):
matrix[i].reverse()
第二种
class Solution:
def rotate(self, matrix: List[List[int]]) -> None:
"""
Do not return anything, modify matrix in-place instead.
"""
n = len(matrix)
matrix[:] = matrix[::-1]
#print(matrix)
for i in range(0, n):
for j in range(i+1, n):
#print(i, j)
matrix[i][j], matrix[j][i] = matrix[j][i], matrix[i][j]