首页 > 代码库 > [leetcode-20-Valid Parentheses]

[leetcode-20-Valid Parentheses]

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

The brackets must close in the correct order, "()" and "()[]{}" are all valid but "(]" and "([)]" are not.

bool isValid(string s)
     {
         stack<char>st;        
         for (int i = 0; i < s.size();i++)
         {
             switch (s[i])
             {
             case (:
             case [:
             case {:st.push(s[i]); break;
             case ):if (st.empty() || st.top() != ()return false; else st.pop(); break;
             case }: if (st.empty() || st.top() != {) return false; else st.pop(); break;
             case ]: if (st.empty() || st.top() != [) return false; else st.pop(); break;
             default:;
             }              
         }
         return st.empty();        
     }

 

[leetcode-20-Valid Parentheses]