这篇文章主要介绍“c++怎么使用括号匹配栈”,在日常操作中,相信很多人在c++怎么使用括号匹配栈问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”c++怎么使用括号匹配栈”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
import java.util.*;
public class MatchingParentheses{
public static void main(String[] args){
String str = "((())())";
boolean b = isMatch(str.toCharArray());
System.out.println(b);
}
static boolean isMatch(char[] chars){
Stack<Character> stack = new Stack();
for (char c:chars) {
if(c == '(' || c == '[' || c == '{'){
stack.push(c);
} else {
if (stack.isEmpty()) {
return false;
} else {
char top = stack.peek();
if ((top == '(' && c == ')') || (top == '[' && c == ']') || (top == '{' && c == '}')) {
stack.pop();
} else {
stack.push(c);
}
}
}
}
if (stack.isEmpty()) {
return true;
}
return false;
}
}
到此,关于“c++怎么使用括号匹配栈”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注天达云网站,小编会继续努力为大家带来更多实用的文章!