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 女儿生日祝福语英语简短