您好,登錄后才能下訂單哦!
20. Valid Parentheses
Given a string containing just the characters '('
, ')'
, '{'
, '}'
, '['
and ']'
, determine if the input string is valid.
The brackets must close in the correct order, "()"
and "()[]{}"
are all valid but "(]"
and "([)]"
are not.
題目大意:
括號匹配問題。
思路:
采用壓棧出棧來處理。
class Solution { public: bool isValid(string s) { if(s.size() == 0 || s.size() % 2 == 1) return false; map<char, char> brackets; brackets.insert(pair<char, char>('}', '{')); brackets.insert(pair<char, char>(']', '[')); brackets.insert(pair<char, char>(')', '(')); stack<char> mystack; for(int i = 0 ;i < s.size();i++) { if(s[i] == '{' || s[i] == '[' || s[i] == '(' ) { mystack.push(s[i]); } else { if( mystack.size() < 1) return false; if(brackets[s[i]] == mystack.top()) mystack.pop(); else return false; } } if(mystack.size() == 0) return true; else return false; } };
2016-08-11 00:30:15
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。