合法括号序列判断

Posted 修修55

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了合法括号序列判断相关的知识,希望对你有一定的参考价值。

题目描述

对于一个字符串,请设计一个算法,判断其是否为一个合法的括号串。

给定一个字符串A和它的长度n,请返回一个bool值代表它是否为一个合法的括号串。

测试样例:
"(()())",6
返回:true
测试样例:
"()a()()",7
返回:false
测试样例:
"()(()()",7
返回:false

class Parenthesis {
public:
    bool chkParenthesis(string A, int n) {
        // write code here
        int count = 0;
        for(int i = 0; A[i]; ++i){
            if(A[i] == ()
                count++;
            else if(A[i] == ))
                count--;
            else
                return false;
            if(count < 0)
                return false;
        }
        return count == 0;
    }
};

 

以上是关于合法括号序列判断的主要内容,如果未能解决你的问题,请参考以下文章

合法括号序列判断

字符串练习:合法括号序列判断

字符串空格替换合法括号序列判断求最长无重复子串问题

数据结构与算法-有效括号序列

2020牛客寒假算法基础集训营4.B——括号序列STL

如何判定括号合法性