a)满足在字符串的任何位置处,其左边的左括号数不小于右括号数;b) 字符串中所有的左右括号数相等。
因此,可以采用栈的思想来匹配:遇到左括号入栈,遇到右括号出栈,直到栈为空,或字符串结束停止;字符串扫描结束时,栈也同时为空,则说明匹配。js如下:
因此,可以采用栈的思想来匹配:遇到左括号入栈,遇到右括号出栈,直到栈为空,或字符串结束停止;字符串扫描结束时,栈也同时为空,则说明匹配。js如下:
function checkBracket(algorithms){
var bracket = [];
var algorithms= algorithms ||'';
for(var i=0; i<algorithms.length; i++){
if(algorithms.charAt(i)=="("){
bracket.push('(');
}
if(algorithms.charAt(i)==")"){
if(bracket.length){
bracket.pop();
}else{
alert('公式括号不配对,缺少左括号!')
return false;
}
}
}
if(bracket.length){
alert('公式括号不配对,缺少右括号!')
return false;
}
return true;
}