題目
假如只有前半部分**,"(()" 這個樣例都過不了。
class
solution
l=0,r=0;
reverse
(s.begin()
,s.end()
);for(
char c:s)
return ans;}}
;
class
solution}}
int ans=0;
for(
int i=
0;i++i) ans=
max(ans,dp[i]);
return ans;}}
;
題目
第一種方法:比如((())()(*)) 只算最裡面的括號對答案的權值是1
solution
}return ans;}}
;第二種方法:我不太會描述
這題就是 比如((() 棧裡面就是0,0,1
每個元素的意思是 這個左括號暫時向右能得到的分數 比如(()() 棧裡面就是0,2 因為第2個(向右可以直到(()().
棧裡每個元素都是(的意思。(()再來乙個)時,棧頂就代表((),棧頂*2就是(()),加上棧頂裡面的乙個 那是同一級別的.
class
solution
}return st.
top();}};
關於leetcode的「有效的括號」的練習
解題思路 字串要達到特殊的 對稱 括號才是有效的,因此可以借助棧,不過要注意先把邊界寫好,例如空字串和奇數個符號的情況就不用進入迴圈,直接返回結果。入棧時,需要先判斷,如果碰到一對滿足條件的括號,例如 就彈出 不滿足就入棧,空棧也入棧,若最後棧為空,代表字串是有效的。如下 參考大佬wallcwr的題...
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...