Balancing of paranthesis
by amrendra kumar
JavaScript
let string = "[ ( ) [ ( ) ( ] ( )]"
let middlebracket = []
let smallbracket = []
for(let i=0; i < string.length; i++) {
let char = string[i]
if(char === '[') {
middlebracket.push(char)
console.log('after push middle bracket', JSON.parse(JSON.stringify(middlebracket)))
} else if(char === ']' ) {
if(middlebracket[middlebracket.length-1] === '[') {
middlebracket.pop()
} else {
middlebracket.push(char)
}
console.log('after pop middle bracket', JSON.parse(JSON.stringify(middlebracket)))
}
if(char === '(') {
smallbracket.push(char)
console.log('after push smallbracket', JSON.parse(JSON.stringify(smallbracket)))
} else if(char === ')' ) {
if(smallbracket[smallbracket.length-1] === '(') {
smallbracket.pop()
} else {
middlebracket.push(char)
}
console.log('after pop smallbracket', JSON.parse(JSON.stringify(smallbracket)))
}
}
const result = !middlebracket.length && !smallbracket.length ? true: false
console.log('result', result)