LeetCode-20. Valid Parentheses--栈的使用

    这个问题太适合用栈来解决了,我一看到这个题目的时候想到了栈,但是以往用栈得写一个结构体,结果是我学的太死板了。

bool isValid(char* s) {
    char stack[1000000];  
    int top=-1;  
    int len=0;  
      
    while(s[len]) {  
        if (s[len]==')') {  
            if (top>=0 && stack[top]=='(')  
                top--;  
            else  
                return false;  
        }  
        else if (s[len]==']') {  
            if (top>=0 && stack[top]=='[')  
                top--;  
            else  
                return false;  
        }  
        else if (s[len]=='}') {  
            if (top>=0 && stack[top]=='{')  
                top--;  
            else  
                return false;  
        }  
        else {  
            top=top+1;  
            stack[top]=s[len];  
        }  
          
        len++;  
    }  
    return top==-1;  
    
}

猜你喜欢

转载自blog.csdn.net/vfi7018/article/details/80530313