[Leetcode] 0073. Establecer ceros de matriz

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

Pitó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))
				
			
es_ESEspañol