有效的括号,JavaScript
给定一个只包括 '(',')','{','}','[',']' 的字符串 s , 判断字符串是否有效: 1.左括号必须用相同类型的右括号闭合。2.左括号必须以正确的顺序闭合。
3.每个右括号都有一个对应的相同类型的左括号。 因为有效的括号必然是成对出现的,①(所以当字符串s长度为奇数时,返回false);因为括号是可以嵌套的,所以不一定是前一个括号有与之相对的另一半之后才会出现的新的一组括号,所以这就造成了第一个出现的右半边括号是一定要和上一位是能组成一对的,这就可以先去掉这一对然后接着比较之后的,这就跟栈的后入先出一致了,将s中的括号一次存入栈中,当下一个入栈的跟栈顶元素是一对,就可以将这一对出栈,②(如果新入栈的右括号跟栈顶元素不匹配,则返回false),③(或者有新入栈的右括号但是栈为空,没有对应的栈顶元素,则返回false)。
标签:false,括号,栈顶,js,有效,字符串,一对,解法 From: https://www.cnblogs.com/chen06a09/p/17169160.html