括号序列问题

给定一个括号序列,如:
())(()
(())()

如何判断这个序列是否合法?
用+标定(,-标定),数值上分别是1和-1,这样从左到用扫描一旦出现和小于0则非法(对称地从右到左扫描一旦和大于0则非法),没有出现非法情况则合法。
这个括号序列包含了几个连续区间?
从左到有扫描,一旦出现和为0,则为一个区间(从右到左扫描亦可)
这些问题虽然很简单,但应该很常用。用于连续区间计数,平面上多个矩形的交(甚至可以求几重交),周长等。

你可能感兴趣的:(括号序列问题)