tema ( enlace )
Método 1: dos recorridos, uno para encontrar la fila correspondiente, guardar la columna y el segundo recorrido para establecer el número de la fila y la columna correspondientes en cero
class Solution:
def setZeroes(self, matrix: List[List[int]]) -> None:
"""
Do not return anything, modify matrix in-place instead.
"""
# 得到矩阵的行数,列数
row_nums = len(matrix)
column_nums = len(matrix[0])
rows = []
columns = []
# 遍历矩阵取出元素为零的行和列,并保存
for i in range(row_nums):
for j in range(column_nums):
if matrix[i][j] == 0:
rows.append(i)
columns.append(j)
rows = set(rows)
columns = set(columns)
# 再遍历一遍,把相应的行,列全部置为0
for i in range(row_nums):
for j in range(column_nums):
if i in rows or j in columns:
matrix[i][j] = 0
return matrix