LeetCode_832. Flipping an Image_Solution

Posted ~不会飞的章鱼~

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LeetCode_832. Flipping an Image_Solution相关的知识,希望对你有一定的参考价值。

原题链接

原题中文链接

一、题目描述

 

二、解题思路

题目所描述的意思是对每个数组先进行取反,并且对数组中的每个元素进行取反转换,所以一共要执行两个操作。

  • 使用reverse函数解决水平翻转的操作;
  • 由于是二进制矩阵,所以使X反转后的结果为 1-X。

 

三、Solution

C++代码:

class Solution {
public:
    vector<vector<int>> flipAndInvertImage(vector<vector<int>>& A) {
        size_t len = A.size();  //获得二进制数组的长度
        for (int i = 0; i < A.size(); i++)
        {
            reverse(A[i].begin(),A[i].end());  //执行翻转(逆序)二进制矩阵的操作
            for (int j = 0; j < A[i].size(); j++)
            {
                A[i][j] = 1 - A[i][j];  //执行反转二进制矩阵的操作
            }
        }
        return A;        
    }
};

 

四、个人收获

本题主要考察对数组和二进制的基本理解,同时也让我熟悉了reverse函数的用法。

Github代码

 

五、参考资料

二进制逆序(字节反转)

 

以上是关于LeetCode_832. Flipping an Image_Solution的主要内容,如果未能解决你的问题,请参考以下文章

[LeetCode&Python] Problem 832. Flipping an Image

[LeetCode] 832. Flipping an Image_Easy

832. Flipping an Image - LeetCode

LeetCode.832. Flipping an Image

Leetcode#832. Flipping an Image(翻转图像)

832. Flipping an Image