【leetcode】20-ValidParentheses

problem

Valid Parentheses

code

class Solution {
public:
    bool isValid(string s) {
        stack<char> paren;
        for(const auto& c : s)
        {
            switch(c)
            {
                case '(': 
                case '{':
                case '[': paren.push(c); break;
                case ')': 
                    if( paren.empty() || paren.top()!='(' ) return false; 
                    else paren.pop();
                    break;
                case '}': 
                    if( paren.empty() || paren.top()!='{' ) return false; 
                    else paren.pop();
                    break;
                case ']':
                    if( paren.empty() || paren.top()!='[' ) return false; 
                    else paren.pop();
                    break;
                default: ;
            }
            
            
        }
        return paren.empty();
        
    }
};
View Code

 

 

 

 注意

1.使用switch...case语句;

2.字符的表示使用单引号而非双引号;

3.注意堆栈stack的使用;

 

参考

1.leetcode-ValidParentheses;

posted on 2018-11-08 17:27  鹅要长大  阅读(191)  评论(0编辑  收藏  举报

导航