public static byte[] compressData(){
//数据压缩的算法
byte[] data=new byte[]{12,56,56,23,82,82,82,82,89,91,90,90,90};//12,56,56,23,0,4,82,89,91,0,3,90
byte[] tempData=new byte[data.length];
int i=0,temp=0,cindex=0,s=data.length;
for(;i<data.length;i++){
for(int j=i;j<data.length;j++){
if(data[i]==data[j]){
temp++;
s--;
if(j==data.length-1){
if(temp>2){
tempData[cindex]=0;
tempData[cindex+1]=(byte)(temp);
tempData[cindex+2]=data[i];
cindex=cindex+3;
s+=3;
}else{
for(int k=0;k<temp;k++){
tempData[cindex+k]=data[i];
}
cindex=cindex+temp;
s+=temp;
}
i=j;
break;
}
continue;
}else{
if(temp>2){
tempData[cindex]=0;
tempData[cindex+1]=(byte
关于简单数据压缩的算法
本文主要讨论关于数据压缩的算法,寻求更优的实现方式,期待读者分享自己的见解和经验。
摘要由CSDN通过智能技术生成