C语言字符串原地压缩实现方法
本文实例讲述了C语言字符串原地压缩的实现方法,对于学习字符串操作的算法设计有不错的借鉴价值。分享给大家供大家参考。具体方法如下:
字符串原地压缩示例:"eeeeeaaaff"压缩为"e5a3f2"
具体功能代码如下:
/*
*Copyright(c)2011alexingcool.AllRightsReserved.
*/
#include<iostream>
#include<iterator>
#include<algorithm>
usingnamespacestd;
chararray[]="eeeeeaaaff";
chararray2[]="geeeeeaaaffg";
constintsize=sizeofarray/sizeof*array;
constintsize2=sizeofarray2/sizeof*array2;
voidcompression(char*array,intsize)
{
inti=0,j=0;
intcount=0;
while(j<size){
count=0;
array[i]=array[j];
while(array[j]==array[i]){
count++;
j++;
}
if(count==1){
i++;
}
else{
array[++i]='0'+count;
++i;
}
}
array[i]=0;
}
voidmain()
{
compression(array,size);
cout<<array<<endl;
compression(array2,size2);
cout<<array2<<endl;
}
相信本文所述对大家C程序算法设计的学习有一定的借鉴价值。
热门推荐
10 八一幼儿祝福语大全简短
11 公司乔迁食堂祝福语简短
12 婚礼结束聚餐祝福语简短
13 儿媳买车妈妈祝福语简短
14 毕业送礼老师祝福语简短
15 同事辞职正常祝福语简短
16 恭贺新婚文案祝福语简短
17 金店立秋祝福语简短英文
18 婆婆高寿祝福语大全简短