在Python中翻转和反转矩阵
假设我们有一个二进制矩阵矩阵。我们必须选择矩阵中的每一行,然后反转该行。之后,翻转每个位(0至1和1至0)。
所以,如果输入像
那么输出将是
为了解决这个问题,我们将遵循以下步骤-
曲目:=0
对于垫子中的每一行,
如果val为1,则
除此以外,
追踪器:=追踪器+1
mat[track,tracker]:=0
mat[track,tracker]:=1
反转行
追踪器:=0
对于行中的每个val,执行
轨迹:=轨迹+1
返回垫
让我们看下面的实现以更好地理解-
示例
class Solution:
def solve(self, mat):
track=0
for row in mat:
row.reverse()
tracker = 0
for val in row:
if val == 1:
mat[track][tracker] = 0
else:
mat[track][tracker] = 1
tracker += 1
track += 1
return mat
ob = Solution()mat = [[1,1,0],[0,1,0],[0,0,1]]
print(ob.solve(mat))输入值
[[1,1,0],[0,1,0],[0,0,1]]
输出结果
[[1, 0, 0], [1, 0, 1], [0, 1, 1]]