zoukankan      html  css  js  c++  java
  • leetcode-20-Valid Parentheses

                                        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.

    括号匹配,使用栈求解。


    class Solution {
    public:
        bool isValid(string s) {
            stack<char>a;
            int n = s.size();
            for (int i = 0;i < n;i++) {
                if (s[i] == '(' || s[i] == '{' || s[i] == '[') {
                    a.push(s[i]);
                }
                else if (s[i] == ')' || s[i] == '}' || s[i] == ']') {
                    if (a.empty()) return false;
                    if (s[i] == ')' && a.top() == '(') { a.pop();  continue; }
                    if (s[i] == '}' && a.top() == '{') { a.pop();  continue; }
                    if (s[i] == ']' && a.top() == '[') { a.pop();  continue; }
                    return false;
                }
            }
            if (a.empty()) return true;
            else return false;
        }
    };


  • 相关阅读:
    链表问题
    有关动态规划的LeetCode
    正则表达式匹配与自动机
    基于数据库范式的一点点想法
    html5 API
    Web鼠标事件
    webpack模块化原理
    Jquery数据缓存
    图片懒加载
    MySql存储过程的调试
  • 原文地址:https://www.cnblogs.com/wzjhoutai/p/6881251.html
Copyright © 2011-2022 走看看