题目
代码(首刷自解)
感觉如果不是因为在做栈专题,我可能跟都想不到要用栈来做,当然用栈来做确实就相当简单了。这里使用的是deque
,这是个双向队列,这样我在返回答案的时候就不用再翻转一遍了。
class Solution {
public:
string removeDuplicates(string s) {
deque<char> q;
for(char& c : s) {
if(q.empty() || q.back() != c)
q.push_back(c);
else {
q.pop_back();
}
}
string res(q.begin(), q.end());
return res;
}
};