题目:
代码(首刷自解 2024年1月21日):
class Solution {
public:
string removeDuplicates(string s) {
if (s.size() < 2) return s;
stack<char> t;
for (int i = 0; i < s.size(); ++i) {
if (t.empty()) t.push(s[i]);
else {
if (s[i] == t.top()) {
t.pop();
continue;
} else {
t.push(s[i]);
}
}
}
string res = "";
while (!t.empty()) {
res = t.top() + res;
t.pop();
}
return res;
}
};
时间复杂度高文章来源:https://www.toymoban.com/news/detail-814152.html
代码(二刷看解析 2024年1月21日)
class Solution {
public:
string removeDuplicates(string s) {
string res = "";
for (auto it : s) {
if (res.empty() || it != res.back()) {
res.push_back(it);
} else {
res.pop_back();
}
}
return res;
}
};
写完代码多思考怎么优化文章来源地址https://www.toymoban.com/news/detail-814152.html
到了这里,关于代码随想录 Leetcode1047. 删除字符串中的所有相邻重复项的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!