832. Flipping an Image
题目描述: Given a binary matrix? To flip an image horizontally means that each row of the image is reversed.? For example,flipping? To invert an image means?that each? 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:
解题思路: c++有个reverse函数可以实现容器反转,我这里没有用,直接遍历每个vector,交换元素。 题目不难,但是一直没能实现功能,最终发现是for(auto vec : A)的原因,应该使用for (auto &vec : A)。 代码: 1 class Solution { 2 public: 3 vector<vector<int>> flipAndInvertImage(vector<vector<int>>& A) { 4 for (auto& vec : A) { 5 int i = 0; 6 int j = vec.size() - 1; 7 while (i <= j) { 8 int tmp = !vec[j]; 9 vec[j] = !vec[i]; 10 vec[i] = tmp; 11 ++i; 12 --j; 13 } 14 } 15 return A; 16 } 17 }; (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |