题解 | #有效括号序列#

有效括号序列

http://www.nowcoder.com/practice/37548e94a270412c8b9fb85643c8ccc2

class Solution {
public:
    bool isValid(string s) {
        //  有效一定是偶数大小
        //  这里不是边界,只是快速判断的条件
        //  可选添加
      if (s.size() % 2) {
        return false;
      }
      
      std::stack<char> stack_;
      
      for (int i = 0; i < s.size(); ++i) {
        char tmp = stack_.top();
        
        if (!stack_.empty() && 
           ((tmp == '(' && s[i] == ')') ||
              (tmp == '[' && s[i] == ']') ||
              (tmp == '{' && s[i] == '}'))) {
          stack_.pop();
          continue;
        }
        stack_.push(s[i]);
      }
      
      if (!stack_.empty()) {
        return false;
      }
      
      return true;
    }
};
全部评论

相关推荐

一表renzha:你点进去没打招呼他也会有提示的,之前我点进美的,还没打招呼,他马上给我发了不太合适哦
点赞 评论 收藏
分享
04-27 08:59
常州大学 Java
牛客139242382号:《两门以上汇编语言》
点赞 评论 收藏
分享
VirtualBool:都去逗他了?
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务