【python/73/M】Set Matrix Zeroes

题目

这里写图片描述

基本思路

基本思路就很明确,双层遍历,找出为0的坐标对,然后存放在一个set()里面,最后在对矩阵进行操作即可。主要需要注意的是二维数组的操作和set的方法,list我们很熟悉,但是set确实不常用。

实现代码

class Solution:
    def setZeroes(self, matrix):
        """
        :type matrix: List[List[int]]
        :rtype: void Do not return anything, modify matrix in-place instead.
        """
        row,column = len(matrix),len(matrix[0])
        # 存放需要修改的位置
        hash_set = set()

        for i in range(row):
            for j in range(column):
                if matrix[i][j] == 0:
                    hash_set.add((i,j))

        for pair in hash_set:
            r,c = pair[0],pair[1]

            matrix[r] = [0]*column
            for i in range(row):
                matrix[i][c] = 0


运行结果

beats 79.53%

猜你喜欢

转载自blog.csdn.net/alicelmx/article/details/81219788