20个有效括号。
20有效的括号
题目
给定仅包含“(”、“)”、“{”、“}”、“[”、“]”的字符串s,判断该字符串是否有效。
有效的字符串必须满足:
左括号必须以相同类型的右括号结束。
左括号必须以正确的顺序关闭。
用例
输入:s='()'
输出:真。
输入:s='()[]{} '
输出:真。
输入:s='(]'
输出:假
输入:s='([)]'
输出:假
输入:s='{[]} '
输出:真。
求解
/**
* @param {string} s
* @ return {布尔值}
*/
var isValid=函数{
让stack=[];
设I=0;
设len=s.length
设x=0;
while(xlen){ 0
if(s[x]=='(' | | s[x]==' { ' | | s[x]=='['){ 0
stack[I]=s[x];
我;
}else{
if(s[x]==')'){ 0
if(堆栈[I-1]=='('){ 0
I-;
}else{
返回false
}
}
if(s[x]==' } '){ 0
if(堆栈[I-1]==“{”){ 0
I-;
}else{
返回false
}
}
if(s[x]==']'){ 0
if(堆栈[I-1]==“[”){ 0
I-;
}else{
返回false
}
}
}
x;
}
if(I==0){ 0
返回真
}else{
返回false
}
};
内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/53724.html