1886. 判断矩阵经轮转后是否一致
- 题号:力扣1886
- 知识点:矩阵
- 目标完成度:16/150
- 总结
题干:
思路:
- 1.判断旋转90°,180°,270°,360°(0°)后的矩阵是否与
target 相等 - 2.如何实现矩阵的旋转,参考:力扣48. 旋转图像。矩阵顺时针旋转90°主要有两个方法,(1)先矩阵转置(
mat = list(map(list, zip(*mat))) )然后左右翻转,或者(2)矩阵上下翻转然后矩阵转置 - 4.这是第(2)种方法实现矩阵旋转90°:
mat = list(map(list, zip(*mat[::-1])))
class Solution:
def findRotation(self, mat: List[List[int]], target: List[List[int]]) -> bool:
if mat == target:
return True
def fun(matrix):
n = len(matrix)
matrix = list(zip(*matrix))
for i in range(n):
matrix[i] = list(matrix[i][::-1])
return matrix
for i in range(3):
mat = fun(mat)
if mat == target:
return True
return False
参考:
|