【发布时间】:2017-11-09 09:15:36
【问题描述】:
我在 CodeHS 中解决了这个问题,我必须编写一个方法,该方法接受一串花括号,如果括号匹配则返回 true,否则返回 false。
到目前为止,这是我的编码,当左大括号和右大括号的数量相同时,我不知道该怎么办,但这些只是不匹配,例如(}}{{)。
public boolean bracketsMatch(String brackets)
{
boolean result = true;
int leftCtr = 0 ; //"{";
int rightCtr =0 ; // "}";
int count = 0;
for (int i=0; i<brackets.length(); i++)
{
char c = brackets.charAt(i);
if ( c == '{')
{
leftCtr++;
}
if (c =='}')
{
rightCtr++;
}
}
if (rightCtr==leftCtr)
{
result= true;
}
else
{
return false;
}
return result;
}
谢谢
【问题讨论】:
-
平等比较
rightCtr==leftCtr应该在for循环外检查。 -
非常感谢!
-
@musefan 是的,刚刚做到了。非常感谢
-
错误是左大括号和右大括号的数量相同,但它不像}}{{ this.
-
@musefan 是的,刚刚意识到并修复了它哈哈
标签: java