幻数据压缩算法2
用跳一位1的方式统计,结果如下:
奇数次1生效:偶数次1被当做0:1(中间有4个0,其中出现过一次1)1(中间有8个0,其中出现过一次1)1(中间有12个0,其中出现过一次1)+尾数00000001
偶数次1生效:头数10+1(中间有6个0,其中出现过一次1)1(中间有10个0,其中出现过一次1)1(中间有14个0,其中出现过一次1)
然后把这些数据比对合并,就能得出源数据。
使用跳两位1的方式统计,结果如下:
第一个1对齐:1(中间有8个0,其中出现过两次1)1(中间有17个0,其中出现过两次1)1+尾数00000001
第二个1对齐:头数10+1(中间有11个0,其中出现过两次1)1(中间有20个0,其中出现过两次1)1
第三个1对齐:头数10100+1(中间有11个0,其中出现过两次1)1(中间有14个0,其中出现过两次1)1+尾数000000100000001
也就是说,当1和0不连续的情况出现得越多,那么使用跳N个1(以及另一个注册表中跳N个0)的统计数据,N的取值越大,压缩比例越高;当1和0不连续的情况出现得越少,那么使用跳N个1(以及另一个注册表中跳N个0)的统计数据,N的取值越小(不排除N=0的情况),压缩比例越高;
=数据对齐算法=
如:
101001000100001000001000000100000