题目描述

给出一个图片矩阵A,先让矩阵水平翻转,也就是对称元素互换,然后反转矩阵,就是对于矩阵中的每一个元素,值为1的设置为0,值为1的设置为0

思路

  • 翻转:使用列表切片的特性data[::-1],将矩阵翻转
  • 反转:遍历每个元素,值为1的设置为0,否则设置为1

代码实现

class Solution:
    def flipAndInvertImage(self, A):
        """
        :type A: List[List[int]]
        :rtype: List[List[int]]
        """
        
        n_rows=len(A)
        n_columns=len(A[0])
        
        # flip image
        for i in range(n_rows):
            A[i]=A[i][::-1]
            
        # revert image
        for i in range(n_rows):
            for j in range(n_columns):
                if A[i][j]==1:
                    A[i][j]=0
                else:
                    A[i][j]=1
        return A