[LeetCode] 0238. Producto de matriz excepto uno mismo

Producto de matriz excepto uno mismo

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

Tabla de contenido

Medio

 


Dada una matriz de enteros números, devolver una matriz respuesta tal que respuesta[yo] es igual al producto de todos los elementos de números excepto números[i].

El producto de cualquier prefijo o sufijo de números es garantizado para encajar en un 32 bits entero.

Debes escribir un algoritmo que se ejecute en En) tiempo y sin utilizar la operación de división.

Ejemplo 1:

Aporte: números = [1,2,3,4]
Producción: [24,12,8,6]

Ejemplo 2:

Aporte: números = [-1,1,0,-3,3]
Producción: [0,0,9,0,0]

Restricciones:

  • 2 <= números.longitud <= 10 5
  • -30 <= números[i] <= 30
  • El producto de cualquier prefijo o sufijo de números es garantizado para encajar en un 32 bits entero.

Hacer un seguimiento: ¿Puedes resolver el problema en O(1) ¿Complejidad de espacio adicional? (La matriz de salida no cuenta como espacio adicional para el análisis de complejidad espacial).

Pitón

				
					Complejidad temporal de #: O(n) Complejidad espacial de #: O(n) al escribir import List clase Solución: def productExceptSelf(self, nums: List[int]) -> List[int]: length = len(nums) lList, rList = [1]*longitud, [1]*longitud lList[0], rList[longitud - 1] = 1, 1 para i en el rango(1, longitud): lList[i] = lList[i-1] * números[i-1] para i en reverso(rango(longitud-1)): rList[i] = rList[i+1] * nums[i+1] para i en rango(longitud): lList[i] * = rList[i] return lList Arrays = [-1, 1, 0, -3, 3] print(Solución().productExceptSelf(Arrays))
				
			
es_ESEspañol