力扣面试题01.06 字符串压缩
力扣面试题01.06 字符串压缩
class Solution {
public:
string compressString(string S) {
int len = S.size();
int temp = len;
char c;
for (int i = 0; i < len; i++)
{
temp += c == S[i] ? -1 : 1;
c = S[i];
}
if (temp >= len)
{
return S;
}
c = S[0];
string res;
int count = 1;
for (int i = 1; i < len; i++)
{
if (c != S[i])
{
res.push_back(c);
res.append(to_string(count));
c = S[i];
count = 1;
}
else
{
count++;
}
if (i == len - 1)
{
res.push_back(c);
res.append(to_string(count));
}
}
return res;
}
};
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步