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 预祝成功祝福语英文简短