[Leetcode] Valid Parentheses

来源:互联网 发布:古墓丽影9a卡优化补丁 编辑:程序博客网 时间:2024/05/02 02:17
class Solution {public:    bool isValid(string s) {        // Start typing your C/C++ solution below        // DO NOT write int main() function        stack<char> buf;        for (int i = 0; i < s.size(); ++i)        {            switch(s[i])            {                case '(':                    buf.push(s[i]);                    break;                case '{':                    buf.push(s[i]);                    break;                case '[':                    buf.push(s[i]);                    break;                case ')':                    if (!buf.empty() && buf.top() == '(')                    {                        buf.pop();                    }                    else                         return false;                    break;                case '}':                    if (!buf.empty() && buf.top() == '{')                    {                        buf.pop();                    }                    else                         return false;                    break;                case ']':                    if (!buf.empty() && buf.top() == '[')                    {                        buf.pop();                    }                    else                         return false;                    break;              }        }                if (buf.empty()) return true;        else return false;    }};