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 生日广州男生祝福语简短