题解 | #有效括号序列#

有效括号序列

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

#include <stack>
class Solution {
  public:
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     *
     * @param s string字符串
     * @return bool布尔型
     */
    bool isValid(string strInput) {
        //string strInput = "([])";
        //cin >> strInput;
        stack<char> stackCharVal;
	bool bFlag = true;
	
	if (strInput.size() != 0)
	{
		for (size_t i = 0; i < strInput.size(); i++)
		{
			if (strInput[i] == '('|| strInput[i] == '['|| strInput[i] == '{')
			{
				stackCharVal.push(strInput[i]);
				//break;
			}
			else 
			{
				if (strInput[i] == ')')
				{
					if (stackCharVal.empty() || stackCharVal.top() != '(')
					{
						return false;
					}
					else
					{
						stackCharVal.pop();
					}
				}
				else if (strInput[i] == ']')
				{
					if (stackCharVal.empty() || stackCharVal.top() != '[')
					{
						return false;
					}
					else
					{
						stackCharVal.pop();
					}
				}
				else if (strInput[i] == '}')
				{
					if (stackCharVal.empty() || stackCharVal.top() != '{')
					{
						return false;
					}
					else
					{
						stackCharVal.pop();
					}
				}
			}
		}
	}
	
	return stackCharVal.empty() ? true : false;
	}
    };

全部评论

相关推荐

10-25 23:12
门头沟学院 Java
点赞 评论 收藏
分享
走不到的路就这样算了吗:大佬硬气
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务