[LeetCode] 0121. Mejor momento para comprar y vender acciones

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

Fácil

 


Te dan una matriz precios dónde precios[i] es el precio de una determinada acción en el yo día.

Quiere maximizar sus ganancias eligiendo un solo dia comprar una acción y elegir una diferentes días en el futuro vender esas acciones.

Devolver el beneficio máximo que puede obtener de esta transacciónSi no puede obtener ningún beneficio, regrese. 0.

Ejemplo 1:

Aporte: precios = [7,1,5,3,6,4]
Producción: 5
Explicación: Compre el día 2 (precio = 1) y venda el día 5 (precio = 6), ganancia = 6-1 = 5. Tenga en cuenta que no se permite comprar el día 2 y vender el día 1 porque debe comprar antes de vender.

Ejemplo 2:

Aporte: precios = [7,6,4,3,1]
Producción: 0
Explicación: En este caso, no se realizan transacciones y el beneficio máximo = 0.

Restricciones:

  • 1 <= precios.longitud <= 10 5
  • 0 <= precios[i] <= 10 4

Pitón

				
					Complejidad de tiempo de #: O(n) Complejidad de espacio de #: O(1) al escribir import Lista clase Solución(objeto): def maxProfit(self, precios: Lista[int]) -> int: beneficio, precio más pequeño = 0, 99999 para precio en precios: si precio < Precio más pequeño: Precio más pequeño = precio else: beneficio = max(beneficio, precio - Precio más pequeño) devuelve beneficio Lista de Precios = [7, 1, 5, 3, 6, 4] solución = Solución() print(solución. maxProfit(Lista de precios))
				
			
es_ESEspañol