llllmz

导航

20. 有效的括号

 

class Solution {
public:
    bool isValid(string s) {
        int r1 = 0, r2 = 0, r3 = 0;
        char temp;
        stack<char> stk;
        for(int i = 0; i < s.size(); ++i){
            if(s[i] == '(' || s[i] == '[' || s[i] =='{'){
                stk.push(s[i]);
            }else if (s[i] == ')'){
                if(!stk.empty()){
                    temp = stk.top();
                    if(temp != '(') return false;
                    stk.pop();
                }else{
                    return false;
                }
            }else if(s[i] == ']'){
                if(!stk.empty()){
                    temp = stk.top();
                    if(temp != '[') return false;
                    stk.pop();
                }else{
                    return false;
                }                
            }else if(s[i] == '}'){
                if(!stk.empty()){
                    temp = stk.top();
                    if(temp != '{') return false;
                    stk.pop();
                }else{
                    return false;
                }
            }
        }
        return stk.empty();
    }
};

 

posted on 2024-10-24 22:16  神奇的萝卜丝  阅读(18)  评论(0)    收藏  举报