#include<iostream>
#include<string>
using namespace std;
int main()
{
string str;
char reschar[50];
reschar[0]='\0';
getline(cin,str);
int len=str.length ();
int count=1;
int k;
for(k=0;k<len;k++)
{
if(str[k+1]==str[k])
count++;
else
{
sprintf(reschar+strlen(reschar),"%c%d",str[k],count);
count=1;
}
}
if(str[k]==str[k-1])
count++;
else
count=1;
sprintf(reschar+strlen(reschar),"%c%d",str[k],count);
cout<<reschar<<endl;
return 0;
}
#include<string>
using namespace std;
int main()
{
string str;
char reschar[50];
reschar[0]='\0';
getline(cin,str);
int len=str.length ();
int count=1;
int k;
for(k=0;k<len;k++)
{
if(str[k+1]==str[k])
count++;
else
{
sprintf(reschar+strlen(reschar),"%c%d",str[k],count);
count=1;
}
}
if(str[k]==str[k-1])
count++;
else
count=1;
sprintf(reschar+strlen(reschar),"%c%d",str[k],count);
cout<<reschar<<endl;
return 0;
}
本文介绍了一个简单的字符串压缩算法实现过程,使用C++语言通过计数重复字符来减少字符串的存储空间。该算法遍历输入字符串,对连续出现的相同字符进行计数,并将字符及其出现次数写入新的字符串中。
3217

被折叠的 条评论
为什么被折叠?



