python 零矩阵
生活随笔
收集整理的這篇文章主要介紹了
python 零矩阵
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
編寫一種算法,若M × N矩陣中某個元素為0,則將其所在的行與列清零。示例 1:輸入:
[[1,1,1],[1,0,1],[1,1,1]
]
輸出:
[[1,0,1],[0,0,0],[1,0,1]
]
示例 2:輸入:
[[0,1,2,0],[3,4,5,2],[1,3,1,5]
]
輸出:
[[0,0,0,0],[0,4,5,0],[0,3,1,0]
]
class Solution:def setZeroes(self, matrix: List[List[int]]) -> None:"""解體思路: 兩次循環遍歷,第一次遍歷找到0元素對應的行和列,第二次遍歷修改元素1.先循環遍歷,獲取到所有0元素的行索引和列索引2.循環遍歷行索引和列索引 把行和列都賦值為0 """# 把出現0元素的行索引添加到row_index的list# 把出現0元素的列索引添加到col_index的listrow_index = []col_index = []for i, v in enumerate(matrix):if 0 in v:row_index.append(i)for j, val in enumerate(v):if 0 == val:col_index.append(j)# 遍歷row_index 和 col_indexrow_len = len(matrix[0])for i, v in enumerate(matrix):if i in row_index:matrix[i] = [0] * row_len for col in col_index:v[col] = 0
總結
以上是生活随笔為你收集整理的python 零矩阵的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python 字符串转换成整数
- 下一篇: python 扑克牌中的顺子