首页 > 试题广场 >

检查给定字符串中的多种括号是否匹配

[编程题]检查给定字符串中的多种括号是否匹配
  • 热度指数:338 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 256M,其他语言512M
  • 算法知识视频讲解
给定字符串,检查其中的括号是否匹配(可能出现的括号包括大括号,中括号和小括号),所谓匹配是指:
1. 左右括号应该一一对应,例如:abc(lasdf[lsdf]lasdf,少了一个右小括号,不匹配。
2. 左括号应该出现在对应的右括号的左边,例如:abc)sdf{lkjsdf}sdf(,第一个右小括号前没有左小括号,不匹配。
3. 一对括号之间的字符串,如果出现括号,那么这些括号也必须匹配,例如:abc(dl[lksdflksd)xd],小括号中出现了一个左中括号(没有对应的右中括号),不匹配

匹配的例子为:abc(dl[lksdf]lksd),左括号和右括号一一对应,因此匹配

当字符串中括号匹配时,输出字符串:true;如果不匹配,输出字符串:false

输入描述:
一行字符串


输出描述:
如果字符串中括号匹配,那么输出:true
如果不匹配,那么输出:false
示例1

输入

abc(dl[lksdf]lksd)

输出

true
头像 不红红黑路同
发表于 2022-02-04 14:42:54
#include <iostream> #include <cstdio> #include <string> #include <vector> #include <queue> #include <stack> using 展开全文