假设我们有一个正方形矩阵,我们必须将其逆时针旋转90度。147
258
369
那么输出将是789
456
1个23
为了解决这个问题,我们将遵循以下步骤-如果矩阵为空,则返回一个空白列表
n:=矩阵的行数
对于矩阵中的每一行,执行反转行
对于范围在0到n-1之间的i交换矩阵[i,j]和矩阵[j,i]
对于范围0到i-1的j,执行
返回矩阵
让我们看下面的实现以更好地理解-
示例classSolution:
defsolve(self,matrix):
ifnotmatrixornotmatrix[0]:
return[]
n=len(matrix)
forrowinmatrix:
row.reverse()
foriinrange(n):
forjinrange(i):
matrix[i][j],matrix[j][i]=matrix[j][i],
matrix[i][j]
returnmatrix
ob=Solution()
matrix=[
[1,4,7],
[2,5,8],
[3,6,9]
]
print(ob.solve(matrix))
输入项[
[1,4,7],
[2,5,8],
[3,6,9]]
输出结果[
[7,8,9],
[4,5,6],
[1,2,3]]