LeetCode 921. 使括号有效的最少添加(栈)
生活随笔
收集整理的這篇文章主要介紹了
LeetCode 921. 使括号有效的最少添加(栈)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1. 題目
給定一個由 '(' 和 ')' 括號組成的字符串 S,我們需要添加最少的括號( '(' 或是 ')',可以在任何位置),以使得到的括號字符串有效。
從形式上講,只有滿足下面幾點之一,括號字符串才是有效的:
- 它是一個空字符串,或者
- 它可以被寫成 AB (A 與 B 連接), 其中 A 和 B 都是有效字符串,或者
- 它可以被寫作 (A),其中 A 是有效字符串。
給定一個括號字符串,返回為使結果字符串有效而必須添加的最少括號數。
示例 1: 輸入:"())" 輸出:1示例 2: 輸入:"(((" 輸出:3示例 3: 輸入:"()" 輸出:0示例 4: 輸入:"()))((" 輸出:4提示: S.length <= 1000 S 只包含 '(' 和 ')' 字符。來源:力扣(LeetCode)
鏈接:https://leetcode-cn.com/problems/minimum-add-to-make-parentheses-valid
著作權歸領扣網絡所有。商業轉載請聯系官方授權,非商業轉載請注明出處。
2. 解題
類似題目:LeetCode 5470. 平衡括號字符串的最少插入次數 medium
- 用棧來匹配,未匹配的在棧內留下來
or
用左右括號計數來表示
總結
以上是生活随笔為你收集整理的LeetCode 921. 使括号有效的最少添加(栈)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: LeetCode 974. 和可被 K
- 下一篇: LeetCode 1480. 一维数组的