加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

[LeetCode] 832. Flipping an Image_Easy

发布时间:2020-12-14 03:49:39 所属栏目:大数据 来源:网络整理
导读:Given a binary matrix? A ,we want to flip the image horizontally,then invert it,and return the resulting image. To flip an image horizontally means that each row of the image is reversed.? For example,flipping? [1,1,0] ?horizontally result

Given a binary matrix?A,we want to flip the image horizontally,then invert it,and return the resulting image.

To flip an image horizontally means that each row of the image is reversed.? For example,flipping?[1,1,0]?horizontally results in?[0,1].

To invert an image means?that each?0?is replaced by?1,and each?1?is replaced by?0.?For example,inverting?[0,1]?results in?[1,0].

Example 1:

Input: [[1,0],[1,1],[0,0]]
Output: [[1,1]]
Explanation: First reverse each row: [[0,0]].
Then,invert the image: [[1,1]]

Example 2:

Input: [[1,0]]
Explanation: First reverse each row: [[0,1]].
Then invert the image: [[1,0]]

Notes:

  • 1 <= A.length = A[0].length <= 20
  • 0 <= A[i][j]?<=?1

?

基本思路,先flip每行,然后翻转. T: O(m*n)? S; O(m*n)

Improve: 可以update in place,for i in range(len(row)//2),然后将left和right翻转之后对调,即可,但是时间复杂度一样 O(m*n)

Code

class Solution:
    def flipImage(self,A):
        lr,lc,ans = len(A),len(A[0]),A
        for i in range(lr):
            ans[i] = A[i][::-1]
        for i in range(lr):
            for j in range(lc):
                ans[i][j] = 1- ans[i][j]
        return ans

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读