/**
* @param {string} s
* @return {boolean}
*/
var isValid = function (s) {
//hash function for partheses
let map = { "}": "{", "]": "[", ")": "(" };
let temp = [];
//Iterates
for(i in s){
//if a index that matches a closing bracket - continue
if(s[i] in map){
//if the temp isn't empty, and the top of the stack is that closing bracket - pop it
if(temp.length > 0 && temp[temp.length-1] === map[s[i]]){
temp.pop();
}
//else we break it - return false
else{
return false;
}
}
//else we push the opening bracket onto the stack
else{
temp.push(s[i]);
}
}
//else we return true if the temp is empty
return temp.length === 0;
};
Прямо в литкоде есть решения, можно открыть Solutions, отфильтровать по языку и читать с описанием, можно перейти к all submissions и выбрать самое быстрое решение.