[Leetcode] 0020. Paréntesis válidos

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


dada una cuerda s que contiene solo los caracteres '('')''{''}''[' y ']', determina si la cadena de entrada es válida.

Una cadena de entrada es válida si:

  1. Los corchetes abiertos deben cerrarse con el mismo tipo de corchetes.
  2. Los corchetes abiertos deben cerrarse en el orden correcto.
  3. Cada corchete cerrado tiene un corchete abierto correspondiente del mismo tipo.

 

Ejemplo 1:

Aporte: s = "()"
Producción: verdadero

Ejemplo 2:

Aporte: s = "()[]{}"
Producción: verdadero

Ejemplo 3:

Aporte: es = "(]"
Producción: FALSO

 

Restricciones:

  • 1 <= longitud s. <= 10 4
  • s consta únicamente de paréntesis '()[]{}'.

Pitón

				
					Complejidad de tiempo #: O(n) Complejidad de espacio #: O(n) Solución de clase: def isValid(self, s: str) -> bool: bracketMap = {"(": ")", "[": "]", "{": "}"} openSet = set(["(", "[", "{"]) stack = [] for char in s: if char in openSet: stack.append(char) elif stack and char == bracketMap[stack[-1]]: stack.pop() else: return False return stack == [] Input = "(())" print(Solution().isValid(Input))
				
			
es_ESEspañol