零矩阵

在m*n的矩阵中,某个元素为0,则将其行与列替换为0

示例:

输入:
[
  [1,1,1],
  [1,1,1],
  [1,1,0]
]
输出:
[
  [1,1,0],
  [1,1,0],
  [0,0,0]
]

题解:

现将m*n矩阵中为0的元素找出来,将它的下标存进一个列表中,再根据列表中的元素将在m*n矩阵中对应的行与列替换成0


x1 = int(input('请输入列表长度:'))
matrix = []
for x_1 in range(1,x1+1):
xstr = input('请输入第%d个元素(数字之间用空格个隔开)'%x_1)
lt3 = [int(n) for n in xstr.split()]
matrix.append(lt3)
print(matrix)
lt = []
x_num = 0
for i in range(len(matrix)):
for j in range(len(matrix[i])):
if matrix[i][j] == 0:
x_n = [i,j]
lt.append(x_n)
while x_num < len(lt):
for m in range(len(matrix)):
for n in range(len(matrix[m])):
if m == lt[x_num][0]:
matrix[m][n] = 0
elif n == lt[x_num][1]:
matrix[m][n] = 0
x_num += 1
print(matrix)

 


 




posted @ 2021-12-25 15:58  金色茶水  阅读(560)  评论(0)    收藏  举报