diff --git a/guide/english/certifications/coding-interview-prep/rosetta-code/balanced-brackets/index.md b/guide/english/certifications/coding-interview-prep/rosetta-code/balanced-brackets/index.md index 3f772b21de..44baf2342f 100644 --- a/guide/english/certifications/coding-interview-prep/rosetta-code/balanced-brackets/index.md +++ b/guide/english/certifications/coding-interview-prep/rosetta-code/balanced-brackets/index.md @@ -8,3 +8,27 @@ This is a stub. This quick style guide will help ensure your pull request gets accepted. + +### Basic Solution +```js +function isBalanced(str) { + if (str === '') return true; + + str = str.split(''); + let stack = []; + for (let i = 0; i < str.length; i++) { + if (str[i] === '[') { + stack.push('['); + } else if (str[i] === ']' && stack[stack.length - 1] === '[') { + stack.pop(); + } + } + return stack.length === 0; +} +``` + +#### Code Explanation +- Split the input string into individual characters & loop over them. +- Push every `[` into a stack. +- Check if the item stored on the stack is `[` when a `]` occurs. This makes it a pair & `[` can be removed from the stack. +- The brackets are balanced if there is no item present in the stack.