1. 问题描述
- 描述:二维数组,行翻转,每个元素取非。
- 输入:二维数组
- 输出:二维数组
2. 解题思路
- 关键点:行翻转,元素取非
- 解题步骤:
- javascript
var flipAndInvertImage = function (image) {
for (let i = 0; i < image.length; i++) {
let line = image[i];
for (let j = 0, k = line.length - 1; j <= k; j++, k--) {
let t = line[j];
line[j] = line[k];
line[k] = t;
if (line[j] === 0) {
line[j] = 1;
} else {
line[j] = 0;
}
if(j!==k){
if (line[k] === 0) {
line[k] = 1;
} else {
line[k] = 0;
}
}
}
}
return image;
};
class Solution(object):
def flipAndInvertImage(self, image):
"""
:type image: List[List[int]]
:rtype: List[List[int]]
"""
for i in range(len(image)):
line = image[i]
for j in range((len(line) + 1) // 2):
k = len(line) - 1 - j
t = line[j]
line[j] = line[k]
line[k] = t
if line[j] == 0:
line[j] = 1
else:
line[j] = 0
if j != k:
if line[k] == 0:
line[k] = 1
else:
line[k] = 0
return image