微智科技网
您的当前位置:首页试解leetcode算法题--翻转图像

试解leetcode算法题--翻转图像

来源:微智科技网

<题目描述>
给定一个二进制矩阵 A,我们想先水平翻转图像,然后反转图像并返回结果。
水平翻转图片就是将图片的每一行都进行翻转,即逆序。
反转图片的意思是图片中的 0 全部被 1 替换, 1 全部被 0 替换。
<原题链接>

<理明思路>

<样例代码>

//C++
class Solution {
public:
	vector<vector<int>> flipAndInvertImage(vector<vector<int>>& A) 
	{
		vector<vector<int>>::iterator vi;
		vector<int>::iterator vj;

		for (vi = A.begin(); vi != A.end(); vi++)
		{
			reverse(vi->begin(), vi->end());
			for (vj = vi->begin(); vj != vi->end(); vj++)
				*vj = !*vj;
		}
		return A;
	}
};

或者

#!/usr/bin/python3

class Solution:
    def flipAndInvertImage(self, A):
        for i in A:
            i.reverse()
        for i in range(len(A)):
            for j in range(len(A)):
                A[i][j] = int(not A[i][j])
        return A

因篇幅问题不能全部显示,请点此查看更多更全内容