1.矩阵置零
问题:给定一个 mx
n 的矩阵,如果一个元素为 0 ,则将其所在行和列的所有元素都设为 0 。请使用 原地 算法**。**
方法:记录行列 置0
python
# 记录行列,分别置0
def set_zero(matrix):
row, col = [], []
# 统计0元素行和列
for i in range(len(matrix)):
for j in range(len(matrix[0])):
if matrix[i][j] == 0:
row.append(i)
col.append(j)
# 行和列置零
for i in range(len(matrix)):
for j in col:
matrix[i][j] = 0
for i in row:
for j in range(len(matrix[0])):
matrix[i][j] = 0
print(matrix)
print(set_zero([[1,1,1],[1,0,1],[1,1,1]]))