給定乙個只包括'('
,')'
,''
,'['
,']'
的字串,判斷字串是否有效。
有效字串需滿足:
左括號必須用相同型別的右括號閉合。
左括號必須以正確的順序閉合。
注意空字串可被認為是有效字串。
示例 1:
輸入:"()"輸出:true
示例 2:
輸入:"(){}"輸出:true
示例 3:
輸入:"(]"輸出:false
示例 4:
輸入:"([)]"輸出:false
示例 5:
輸入:""輸出:true
var isvalid = function (s) ', '');
if (s == temp) return false
}return true;
};
換一種思路,可以邊遍歷邊匹配。也就是遍歷的時候遇到左括號存入陣列,下次遇到的第乙個右括號必須和陣列中最後乙個元素匹配,否則為無效字串,匹配完成後從陣列中刪除此元素。若最終陣列為空,表示括號已全部匹配完,字串有效
/**
* @param s
* @return
*/var isvalid = function(s) "
}let leftarr=
for(let a of s)else
}return !leftarr.length//防止全部為左括號
};
有效的括號
題目描述 給定乙個只包括 的字串,判斷字串是否有效。有效字串需滿足 左括號必須用相同型別的右括號閉合。左括號必須以正確的順序閉合。注意空字串可被認為是有效字串。解題思路 坦白來講這道題真的沒什麼思路,掉的坑也比較多,因為審題不認真,最後的一句話,注意空字串可被認為是有效字串。被吃掉了 最後提交的 執...
有效的括號
給定乙個只包括 的字串,判斷字串是否有效。有效字串需滿足 左括號必須用相同型別的右括號閉合。左括號必須以正確的順序閉合。注意空字串可被認為是有效字串。多組資料 每組是乙個由 組成的括號序列 每組字串長度不超過50。如果有效輸出true,否則輸出false。true true false false ...
有效的括號
給定乙個只包括 的字串,判斷字串是否有效。有效字串需滿足 左括號必須用相同型別的右括號閉合。左括號必須以正確的順序閉合。注意空字串可被認為是有效字串。多組資料 每組是乙個由 組成的括號序列 每組字串長度不超過50。如果有效輸出true,否則輸出false。true true false false ...