Balanced Brackets

  • + 0 comments

    Java 15

        public static String isBalanced(String s) {
            Map<Character, Character> bMap = Map.of(')','(','}','{',']','[');
            Stack<Character> myStack = new Stack<>();
            for (int i = 0; i < s.length(); i++) {
                char c = s.charAt(i);
                if (bMap.containsValue(c)) myStack.push(c);
                else if (bMap.containsKey(c)) {
                    if (!myStack.isEmpty() && bMap.get(c).equals(myStack.peek())) 
                        myStack.pop();
                    else return "NO";
                }
            }
            return myStack.isEmpty() ? "YES" : "NO";
        }