1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
|
class { public: bool isValid(string s) { stack<char> st; for(auto i:s){ switch(i){ case '(': st.push('('); break; case '[': st.push('['); break; case '{': st.push('{'); break; case ')': if(st.empty()||st.top()!='(') return false; st.pop(); break; case ']': if(st.empty()||st.top()!='[') return false; st.pop(); break; case '}': if(st.empty()||st.top()!='{') return false; st.pop(); break; } } if(st.empty()) return true; else return false; } };
|
如果想到要用栈来存储的话,此题还是比较容易的,但由于我数据结构知识亟待补充,故列上来以备忘。
近期评论