給定乙個只包括 『(』,』)』,』』,』[』,』]』 的字串,判斷字串是否有效。有效字串需滿足:
左括號必須用相同型別的右括號閉合。 左括號必須以正確的順序閉合。 注意空字串可被認為是有效字串。
示例 1:輸入: 「()」
輸出: true
示例 2:輸入: 「(){}」
輸出: true
示例 3:輸入: 「(]」
輸出: false
示例 4:輸入: 「([)]」
輸出: false
示例 5:棧輸入: 「」
輸出: true
對給定的字串s進行遍歷,當遇到乙個左括號時,會期望遇到乙個相同型別的右括號將其閉合,由於後遇到的左括號要先閉合,因此可以將這個左括號放入棧頂,當我們遇到乙個右括號時,需要將乙個相同型別的左括號閉合,此時,可以去除棧頂的左括號並判斷他們是否是相同型別的括號,如果不同型別,或者棧中並沒有左括號,那麼字串s無效,返回false,為了快速判斷括號型別,可使用雜湊對映,儲存每一種括號,雜湊對映的鍵位左括號,值位相同型別的左括號,在遍歷結束後,如果棧中沒有左括號,說明我們將字串s中的所有左括號閉合,返回true,否則返回false。
leetcode 有效的括號
題目 給定乙個只包括 的字串,判斷字串是否有效。有效字串需滿足 1.左括號必須用相同型別的右括號閉合。2.左括號必須以正確的順序閉合。示例1 輸入 輸出 true示例 2 輸入 輸出 true示例 3 輸入 輸出 false示例 4 輸入 輸出 false示例 5 輸入 輸出 true includ...
leetcode 有效的括號
給定乙個只包括 的字串,判斷字串是否有效。有效字串需滿足 左括號必須用相同型別的右括號閉合。左括號必須以正確的順序閉合。注意空字串可被認為是有效字串。示例 1 輸入 輸出 true示例 2 輸入 輸出 true示例 3 輸入 輸出 false示例 4 輸入 輸出 false示例 5 輸入 輸出 tr...
LeetCode 有效的括號
給定乙個只包括 的字串,判斷字串是否有效。有效字串需滿足 左括號必須用相同型別的右括號閉合。左括號必須以正確的順序閉合。注意空字串可被認為是有效字串。示例 1 輸入 輸出 true 示例 2 輸入 輸出 true 示例 3 輸入 輸出 false 示例 4 本題需使用棧來解決,即遍歷字串,遇到左括號...