F D J H L K J H L K J H L K J H
为了快速得知每个数字的排列方式,可以进行统计校验
每一行的第一列中出现A的次数为2次
每一行的第二列中出现A的次数为0次
第一行中出现A的次数为2次
第二行中出现A的次数为3次
A在整个文本中出现过12次
以此类推,就能使用数独的方式,逆推出去掉了很多排列组合的有限数量的排列组合方式,然后这些排列组合就能通过其他校验方式,比如MD5,比如SHA128和其他校验方式快速找出正确的排列组合。
这种方式,就是使用小公式重复使用的方式,快速生成数据的片段,然后只需要把数据片段进行拼图一样的整理就行了,就能还原出源文件。
之前说的,只应用到阶乘,N次方,无理数,都只适合于超级计算机的压缩方式,而这次介绍的,则是相对来说,更适合个人计算机,以及单片机使用,本身就是以硬件上限有限时,如何获得最高压缩率,以及最快解压缩。
同样的,把数据进行片段化,然后使用特定进制的方式来进行统计,同样可以统计出,然而还有一种特殊的进制转换对齐校验方式。
比如二进制的。
转换为4进制(00=A)(01=B)(10=C)(11=D):CCCDCCDBDBABADBDAC
转换为十进制:46,084,723,570
转换为16进制:A BADD 1372
然后进行统计,比如,在4进制中,ABCD各出现过多少次;在二进制中0和1各出现过多少次;在十进制中0各出现过多少次;在十六进制中0ABCDEF各出现过多少次。
当然了,为了进制校验的准确性,一般都是采用素数进制的方式来进行校验(比如2进制,3进制,5进制,7进制,11进制,13进制……以此类推),然后通过进制之间的差异,来统计。
当然了,因为是为了给单片机使用的,所以本身就不会采用过高进制,比如高达亿进制。
也就是把每一个数据片段,都除以各个进制数,然后得出余数。
→喷子兼或破壁人:所以分解质因数都出现了是吧?你还能更敷衍一点么?
→喷子兼或破壁人:直到现在,你都没有给出使用多处理器来进行大数据压缩和解压缩的代码实现,你在这给程序员用自然语言编程呢?