您的位置:首页 > 其它

基于栈判断括号是否匹配

2014-03-01 10:40 274 查看
public class IsMatch {

//检测括号的匹配
public static boolean isPiPei(String s){
//	字符串数据:	"(   [   ]   )  ]"
//   栈中数据:	‘(’, '[',
Stack<Character> sk = new Stack<Character>();
for (int i = 0; i < s.length(); i++) {
if (s.charAt(i) == '(') {
sk.push('(');  //往栈中压入'('
}
if (s.charAt(i) == ')') {
if (!sk.isEmpty() && sk.pop() == '(')

continue;
else
return false;
}
if (s.charAt(i) == '[') {
sk.push('[');
}
if (s.charAt(i) == ']') {
if (!sk.isEmpty() && sk.pop() == '[')
continue;//
else
return false;
}
}
if (sk.isEmpty())
return true;
else
return false;
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: