[Solved] Given a string s containing just the characters ‘(‘, ‘)’, ‘{‘, ‘}’, ‘[‘ and ‘]’, determine if the input string is valid.

Table of Contents

Question

Given a string s containing just the characters '('')''{''}''[' and ']', determine if the input string is valid.

An input string is valid if:

  1. Open brackets must be closed by the same type of brackets.
  2. Open brackets must be closed in the correct order.
  3. Every close bracket has a corresponding open bracket of the same type.

Example 1:

Input: s = "()"
Output: true

Example 2:

Input: s = "()[]{}"
Output: true

Example 3:

Input: s = "(]"
Output: false

Constraints:

  • 1 <= s.length <= 104
  • s consists of parentheses only '()[]{}'.

Python Solution

class Solution:
    def isValid(self, s: str) -> bool:
        stack=[]
        boo = True

        for ch in s:
            if ch in '([{':
                stack.append(ch)
            elif ch in ')]}':
                try:
                    popped_element = stack.pop()
                except:
                    boo=False
                    break
                if popped_element=='(' and ch==')':
                    pass
                elif popped_element=='{' and ch=='}':
                    pass
                elif popped_element=='[' and ch==']':
                    pass
                else:
                    boo=False
                    break
        if len(stack)==0:
            return (boo)
        else:
            return (False)
Abhishek Sharma
Abhishek Sharma

Started my Data Science journey in my 2nd year of college and since then continuously into it because of the magical powers of ML and continuously doing projects in almost every domain of AI like ML, DL, CV, NLP.

Articles: 520

Leave a Reply

Your email address will not be published. Required fields are marked *