Explore diversas soluciones LeetCode en Python, C++, JavaScript, SQL y TypeScript. Ideal para preparación de entrevistas, aprendizaje y práctica de código en múltiples lenguajes de programación. Enlace de repositorio de Github
dado un xn
matriz entera matriz
, si un elemento es 0
, establezca toda su fila y columna en 0
's.
debes hacerlo en su lugar.
Ejemplo 1:
Aporte: matriz = [[1,1,1],[1,0,1],[1,1,1]] Producción: [[1,0,1],[0,0,0],[1,0,1]]
Ejemplo 2:
Aporte: matriz = [[0,1,2,0],[3,4,5,2],[1,3,1,5]] Producción: [[0,0,0,0],[0,4,5,0],[0,3,1,0]]
Restricciones:
m == matriz.longitud
n == matriz[0].longitud
1 <= m, n <= 200
-2 31 <= matriz[i][j] <= 2 31 - 1
Hacer un seguimiento:
- Una solución sencilla utilizando
O(min)
El espacio probablemente sea una mala idea. - Una simple mejora utiliza
O(metro + norte)
espacio, pero todavía no es la mejor solución. - ¿Podrías idear una solución de espacio constante?
Tabla de contenido
PalancaPitón
Complejidad de tiempo de #: O(m*n) Complejidad de espacio de #: O(m+n) al escribir clase de lista de importación Solución: def setZeroes(self, matriz: Lista[Lista[int]]) -> Ninguno: conjunto de filas, conjunto de coles = set(), set() para r en rango(len(matriz)): para c en rango(len(matriz[0])): si matriz[r][c] == 0: rowSet.add(r) colSet.add(c) para r en rango(len(matriz)): para c en rango(len(matriz[0])): si r en conjunto de filas o c en colSet: matriz[r][c] = matriz 0 = [[0, 1, 2, 0], [3, 4, 5, 2], [1, 3, 1, 5]] print(Solución().setZeroes(matriz))