balanced-brackets
Question
Given a string as input return a boolean indicating whether the string contains matching brackets
input:
Output:
true
Solution
Javascript
const stack = [];
const brackets = {
"(": ")",
"{": "}",
"[": "]",
};
const closingBracket = "}])";
for (const char of string) {
if (char in brackets) {
stack.push(brackets[char]);
} else if (closingBracket.includes(char)) {
if (stack[stack.length - 1] === char && stack.length > 0) {
stack.pop();
} else {
return false;
}
} else {
continue;
}
}
return stack.length === 0;
Java
Concepts
Patterns
- Stack