괄호의 짝이 맞는지 확인하는 문제.
var isValid = function(s) {
let bracket = {
"(" : ")",
"{" : "}",
"[" : "]",
}
let heap = [];
for(let char of s){
if(bracket[char]){ // bracket[char] 가 "("
heap.push(bracket[char]); // => heap = [")"] => loop 종료
}else{ // bracket[char] === ")" 일때 pop 해서 나오는 ")" 가 맞는지 확인.
if(heap.pop() !== char) return false;
}
}
return (!heap.length);
};
Runtime: 72 ms, faster than 95.80% of JavaScript online submissions for Valid Parentheses.
Memory Usage: 38.9 MB, less than 53.24% of JavaScript online submissions for Valid Parentheses.