用C ++压缩字符串
假设我们有一个字符串s,我们必须从给定的字符串中消除连续的重复字符并返回它。因此,如果列表包含连续的重复字符,则应将其替换为该字符的单个副本。元素的顺序将与之前相同。
因此,如果输入像“heeeeelllllllloooooo”,那么输出将是“helo”
为了解决这个问题,我们将遵循以下步骤-
ret:=一个空白字符串
对于初始化i:=0,当i<s的大小时,更新(将i增加1),执行-
忽略以下部分,跳至下一个迭代
如果ret的大小不为零,并且ret的最后一个元素与s[i]相同,则-
ret:=ret连接s[i]
返回ret
让我们看下面的实现以更好地理解-
示例
#include <bits/stdc++.h>
using namespace std;
class Solution {
public:
string solve(string s) {
string ret = "";
for(int i = 0; i < s.size(); i++){
if(ret.size() && ret.back() == s[i]){
continue;
}
ret += s[i];
}
return ret;
}
};
int main(){
Solution ob;
cout << (ob.solve("heeeeelllllllloooooo"));
}输入项
"heeeeelllllllloooooo"
输出结果
helo
热门推荐
3 薛之谦祝福语简短
10 中式婚礼贺词祝福语简短
11 对睡觉的祝福语简短
12 祝福语同事离职英文简短
13 生日祝福语古朴简短独特
14 18岁的祝福语简短
15 诗意新婚祝福语高级简短
16 朋友节最简短祝福语
17 祝贺新店开业祝福语简短
18 分手快乐祝福语简短