我想测试一个输入字符串是否是平衡的。如果存在匹配的开放和关闭括号、方括号或大括号,那么它将是平衡的。
example:
{} balanced
() balanced
[] balanced
If S is balanced so is (S)
If S and T are balanced so is ST
public static boolean isBalanced(String in)
{
Stack st = new Stack();
for(char chr : in.toCharArray())
{
if(chr == '{')
st.push(chr);
}
return false;
}
我在选择如何处理问题时遇到了困难。我应该把每个开括号、闭括号或大括号放在一个栈中,然后弹出它们吗?如果我弹出它们,这真的有帮助吗?
Deques
也可以用作LIFO(后进先出)堆栈。应该优先使用此接口,而不是传统的Stack
类。 - O.Badr