Kraftschnalle NO.73 Matrix Null

Thema ( Link )

Bildbeschreibung hier einfügen
Bildbeschreibung hier einfügen

Methode 1: Zwei Durchläufe, ein Durchlauf, um die entsprechende Zeile zu finden, die Spalte zu speichern, und der zweite Durchlauf, um die Nummer der entsprechenden Zeile und Spalte auf Null zu setzen

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


Ich denke du magst

Origin blog.csdn.net/qq_33489955/article/details/124263593
Empfohlen
Rangfolge