java实现括号的匹配括号的匹配
下⾯的代码⽤于判断⼀个串中的括号是否匹配
所谓匹配是指不同类型的括号必须左右呼应,可以相互包含,但不能交叉
例如:
…(…[…]…)… 是允许的
…(…[…)…]… 是禁⽌的
对于 main ⽅法中的测试⽤例,应该输出:
false
true
false
false
import java.util.*;
public class A22
{
public static boolean isGoodBracket(String s)
{
Stack<Character> a = new Stack<Character>();
for(int i=0; i<s.length(); i++)
正则匹配括号里的内容{
char c = s.charAt(i);
if(c=='(') a.push(')');
if(c=='[') a.push(']');
if(c=='{') a.push('}');
if(c==')' || c==']' || c=='}')
{
if(____________________) return false; // 填空
if(a.pop() != c) return false;
}
}
if(___________________) return false; // 填空
return true;
}
public static void main(String[] args)
{
System.out.println( isGoodBracket("...(..[.)..].{.(..).}..."));
System.out.println( isGoodBracket("...(..[...].(.).){.(..).}..."));
System.out.println( isGoodBracket(".....[...].(.).){.(..).}..."));
System.out.println( isGoodBracket("...(..[...].(.).){.(..)...."));
}
}
请分析代码逻辑,并推测划线处的代码。
答案写在 “解答.txt” ⽂件中
注意:只写划线处应该填的内容,划线前后的内容不要抄写。
!
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论