海棠文

第501章 幻数据压缩算法2
章节错误/点此举报

小贴士:页面上方临时书架会自动保存您本电脑上的阅读记录,无需注册
    =数据压缩算法=统计算法=
    001100;001110;110001;110011;
    把数据按照顺序对齐:
    001100;001110;110001;110011;
    把数据按照大小对齐:
    110011;110001;001110;001100;
    把数据按照近似对齐:
    110011和001100互为求反;110001和001110互为求反;
    每一段数据,都有多个标签,通过添加标签的方式,从而减少数据穷举试错的次数。
    =有限进制速记算法=
    把任何数都可以记录为a^b*c!+d;a的b次方乘以c的阶乘加d;
    如43的37次方乘以31的阶乘加499739
    43^37*31!+499739
    43^37=2.7436762028363398179986072951166e+60
    31!=8.22283865417792281772556288e+33
    43^37*31!=2.2560806735230762092253487562356e+94
    =跳数统计速记算法=
    如101001000100001000001000000100000001
    123456789012345678901234567890123456→作者避免自己看看得眼睛疼,所以使用数字在特定字体下宽度和高度是一样的方式,来进行作为标尺,数间隔多少位用的。
    使用跳一位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的情况),压缩比例越高;
    =数据对齐算法=
    如:
    101001000100001000001000000100000001
    101010101010101010101010101010101010
    100110011001100110011001100110011001
    123456789012345678901234567890123456
    第一种标尺:10循环充满
    完全一致:(1,2,3,4,8,12,14,15,16,18,20,21,22,24,26,30,32,34)
    完全单比特求反:(5,6,7,9,10,11,13,17,19,23,25,27,28,29,31,33)
    第二种标尺:1001循环充满
    完全一致:(1,2,7,11,14,18,19,21,22,23,26,27,28,30,31,34,35,36)
    完全单比特求反:(3,4,5,6,8,9,10,12,13,15,16,17,20,24,25,29,32,33)
    第n种标尺:????
    完全单比特一致:(*,*,*……)
    完全双比特一致:(*,*,*……)
    完全多比特一致:(*,*,*……)
    完全单比特求反:(*,*,*……)
    完全双比特求反:(*,*,*……)
    完全多比特求反:(*,*,*……)
    使用的算法越多,那么算法所生成的数据就越多,相应的就可以快速互相校验,从而避免1个比特的篡改导致最终损失1zb其中的900tb数据的极端压缩文件异常灾难;毕竟压缩率越高,就意味着一旦出现了压缩文件缺失以及特定数据不可读取(比如硬件损坏,磁盘坏道,软件权限不足)就会导致最终解压缩所缺失的部分越多;压缩率越高,就要求容错能力和纠错能力越强,比如说,把1zb的数据,压缩成1gb数据,1gb数据中随机有百分之五十的数据不可读取,是否能够通过剩下的百分之五十数据逆推出整个1gb数据内容?从而可以解压缩成原先的压缩前的1zb数据(当然了,容错和纠错就难免会增加试错和穷举的运算量)。
上一页        返回目录        下一页

温馨提示:按 回车[Enter]键 返回书目,按 ←键 返回上一页,按 →键 进入下一页。