入门级编程通关练习题 #9 – 匹配字符串

给定一个字符串,里面的字符都是由括号组成:()、[ ]、{ }。检查这个字符里面的括号是否匹配,譬如字符串 ”[ ( ) ] { }“ 是匹配的,而字符串”] [ “是不匹配的。

输入样例:

"[({})](]"

输出样例:

False

算法思路:

这是典型使用stack数据类型的练习题。每次拿到一个括号,可以和栈顶的字符进行匹配。能够匹配的一对括号就可以消去,如果不能匹配或者栈内为空则压栈。最后栈内如果还有剩余括号表明该字符串里面的括号不匹配,如果为空则表明匹配。