最佳实践:在字符串编程的时候,尽可能使用append,而不是使用+号,因为使用+号的话用导致内存的拷贝,这样可能会超出内存限制.
字符串压缩 https://leetcode-cn.com/problems/compress-string-lcci/
class Solution {
public:
string compressString(string S) {
//每次遇到不一样的就进行更新操作
if(S.size() ==0 ) return "";
//为了普遍性
char ch =S[0];//一开始是空字符
int count = 1;
string res;
//aabbb
for(int i = 1; i < S.size(); i++){
if(ch != S[i]){
//做清算
// res = res + ch + to_string(count);
res.append(ch+to_string(count));
ch = S[i];
count = 1;
}else
count ++;
}
//结尾做清盘
// res = res + ch + to_string(count);
res.append(ch+to_string(count));
if(res.size() >= S.size()) return S;
return res;
}
};