目录
1.1 判断括号是否成对出现,且都是左右成对(不能是"} {" ,这是右左成对)。
1.1 判断括号是否成对出现,且以都是左右成对(不能是"} {" ,这是右左成对)。
package com.demo.thinking;
import java.util.HashMap;
import java.util.Stack;
public class Parentheses {
public static Boolean isMatch(String str){
HashMap<Character, Character> pairMap = new HashMap<>();
pairMap.put('}','{');
pairMap.put(')','(');
pairMap.put(']','[');
Stack<Character> stack = new Stack<>();
for (int i = 0; i <str.length() ; i++) {
char c = str.charAt(i);
if (!pairMap.containsKey(c)) {
stack.push(c);
} else if (stack.isEmpty() || !stack.pop().equals(pairMap.get(c))) {
return false;
}
}
// if (!stack.isEmpty()) {
// return false;
//转载请标明链接:https://blog.csdn.net/wabiaozia/article/details/107447793
// }
return stack.isEmpty();
}
public static void main(String[] args) {
Boolean match = isMatch("({}[])");
System.out.println(match);
}
}
2
3