mongodb 手動切換master_MongoDB副本集詳解
阿新 • • 發佈:2021-02-11
技術標籤:Leetcode每日打卡_每日一道leetcode演算法資料結構
Leetcode 20 有效的括號
題目描述
給定一個只包括 ‘(’,’)’,’{’,’}’,’[’,’]’ 的字串 s ,判斷字串是否有效。
有效字串需滿足:
左括號必須用相同型別的右括號閉合。
左括號必須以正確的順序閉合。
來源:力扣(LeetCode)題目連結
著作權歸領釦網路所有。商業轉載請聯絡官方授權,非商業轉載請註明出處。
題解1(棧)
class Solution {
public:
bool isValid(string s) {
int len = s.size();
if((len & 1) == 1) return false;
//只存右括號
unordered_map<char, char> hash = {
{')', '('},
{']', '['},
{'}', '{'}
};
stack<char> cur;
for(int i = 0; i < len; i++){
if(hash.count(s[ i])){
//這裡注意,如果棧空還遇到了右括號,則說明不合理
//這裡也可以換成ASC碼來判斷是不是左右配對
if(cur.empty() || cur.top() != hash[s[i]]){
return false;
}
cur.pop();
}else{
cur.push(s[i]);
}
}
return cur.empty();
}
};