在做题中学习(73):删除字符串中所有相邻重复项
解法:用栈来模拟
思路:不用真的定义一个栈,用字符串string来模拟栈的行为
入栈:push_back(s[i]) 出栈:s[i] == s.back()的时候,并且s.size() > 0,循环结束得到结果
注意:如果真的用stack<char>来模拟的话,最后赋值给string后,需要reverse逆序。
class Solution
{
public:
string removeDuplicates(string s)
{
string tmp;
for(auto e : s)
{
if(tmp.size() && tmp.back() == e)
tmp.pop_back();
else
tmp.push_back(e);
}
return tmp;
}
};
原文地址:https://blog.csdn.net/yiren_liusong/article/details/143383365
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!