유효한 괄호 - 일일 JS(19일차)

문제 설명'(' , ')' , '{' , '}' , '['']' 문자만 포함하는 문자열 s가 주어지면 입력 문자열이 유효한지 확인합니다.

다음과 같은 경우 입력 문자열이 유효합니다.
  • 열린 대괄호는 같은 유형의 대괄호로 닫아야 합니다.
  • 열린 브래킷은 올바른 순서로 닫아야 합니다.


  • 예 1:

    Input: s = "()"
    Output: true
    


    예 2:

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


    예 3:

    Input: s = "(]"
    Output: false
    


    제약:

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


    해결책

    const isValid = (s) => {
        if (s.length <=1) return false;
    
        const stack = []
        const hash = {
            '(' : ')',
            '[' : ']',
            '{' : '}'
        }
    
        for(let i = 0; i < s.length; i++){
            if (hash[s[i]]) stack.push(hash[s[i]])
            else if (s[i] !== stack.pop()) return false
        }
        return !stack.length
    };
    


    LeetCode 문제:
    https://leetcode.com/problems/valid-parentheses/

    시리즈를 즐기시기 바랍니다. 그렇다면 ❤️ 및 . 나중에 사용할 수 있도록 북마크에 추가할 수도 있습니다. 질문이나 제안 사항이 있으면 주저하지 말고 삭제하십시오.
    감사합니다 다음 포스팅에서 뵙겠습니다.

    좋은 웹페이지 즐겨찾기