计算匹配括号的Java程序

计算匹配括号的Java程序,java,Java,我想写一个程序来计算匹配括号的数目。有人知道怎么写吗? 对于ex.Input,这是一个测试 Output=2迭代字符串中的字符,并跟踪开始括号和结束括号 请看一看这个类,它有一些方法可以为您提供其索引并找到某个索引。使用堆栈:当您找到一个左括号时,将其推到堆栈上。遇到右括号时,请弹出一个。当您到达语句末尾时,堆栈中要么为空,要么所有括号都匹配,要么左边的数字告诉您有多少未能关闭 逐字符迭代字符串。 当您找到一个开括号时,递增一个开计数器 找到右括号时: 如果你的开放式柜台是你迄今为止尝试过的?你

我想写一个程序来计算匹配括号的数目。有人知道怎么写吗? 对于ex.Input,这是一个测试
Output=2

迭代字符串中的字符,并跟踪开始括号和结束括号


请看一看这个类,它有一些方法可以为您提供其索引并找到某个索引。

使用堆栈:当您找到一个左括号时,将其推到堆栈上。遇到右括号时,请弹出一个。当您到达语句末尾时,堆栈中要么为空,要么所有括号都匹配,要么左边的数字告诉您有多少未能关闭

逐字符迭代字符串。 当您找到一个开括号时,递增一个开计数器 找到右括号时:
如果你的开放式柜台是你迄今为止尝试过的?你是如何看待这个问题的?这是家庭作业吗?-1,你能添加你已经尝试过的代码吗?查看字符串文档。不要指望社区提供源代码,当你找不到帮助时尝试。你必须解释随机放置的打开和/或关闭的不匹配项吗?为什么要投反对票?这个答案在我看来似乎是正确的,但可能遗漏了一些东西:|我不是落选者,但它没有回答问题。跟踪是什么意思?答案也可以是:迭代,并计算匹配的括号,这没有多大帮助。通过给出代码示例,您可以避免在这里出现否决票。我2面临同样的问题,分享经验。抱歉,最初的否决票来自我,因为它没有回答问题。你原来的答案根本不算对。我在写评论的过程中被叫走了。除非有更多的解析工作要做,否则保留一个堆栈等没有多大意义。现在,这个要求可以通过一个当前开括号的简单计数器来满足。虽然正确,但是一个只有一个可能字符的堆栈似乎是一种过度杀伤力,一个计数器@dogbane应该更有效地模拟这个堆栈。我想写一个程序来计算匹配的密码的数量-不需要更多的解析。我同意,数数就足够了。但计数将传递到上面的JB t结果,但堆栈不会被愚弄。你的答案在哪里?或者你只是对别人的答案漫不经心地发表评论?对于这样一个小问题,效率意味着什么?荒唐的我看不出需要额外的字符。@duffymo:鼓励评论,评论也不是毫无意义的。我不明白为什么它会是一个巨魔。顺便说一句,这个问题问匹配括号的数量,你的答案给出了不匹配的开头括号的数量。+1。最后给出了一种简单、高效的算法。