加入书架 | 推荐本书 | TXT下载

三四中文网->脑回路清奇的主角们TXT下载->脑回路清奇的主角们

正文 第494章 幻数据压缩算法猜想

作者:纯白色科幻宅        书名:脑回路清奇的主角们        类型:历史军事       直达底部↓       返回目录

一秒记住 三四中文网 www.534zw.com 手机同步阅读请访问 mi.534zw.com

    =数据压缩算法=循环头部兼或尾部余数补全算法=

    [规则]

    1:定义一个特定长度来分割整个被压缩文件。

    2:定义一系列的特定长度特定内容的比对大小数据。

    3:统计被压缩文件总共有多少个二进制0和二进制1;统计被压缩文件换算成17进制,有多少个0到9,A到G;统计被压缩文件换算成十进制三位数的素数进制,各有多少个???;统计被压缩文件换算成十进制四位数的素数进制,各有多少个???;统计被压缩文件换算成十进制五位数的素数进制,各有多少个???;以此类推,文件越大,换算的进制数量越多。

    [示例]

    被压缩文件:1001010001000011000110111011101111011101110111011101110111011101110111011101110110100100111001

    按照7位来分割,就分割成了

    1001010

    0010000

    1100011

    0111011

    1011110

    1110111

    0111011

    1011101

    1101110

    1110111

    0111011

    1011010

    0100111

    001

    记录尾数是001(不足7位)

    然后就是设定特定长度特定内容的比对大小数据:

    常见的→01←+0(→←中间的内容,就是指特定数循环,比如→01←就是0101010101……一直循环下去,直到正好补充完数位,如果没有补充完数位,就是需要有一个余数数据+?)

    七位数的→01←+0就是0101010;

    十一位数的→01←+0就是01010101010;

    还有一种用法?+→*←(这里按照通配符的方式定义;?表示只有一位的任意值;*表示有等于或大于一位的任意值)

    算法表示通则:数值A+→数值B←+数值C

    其中数值A+表示开头以什么为开头,然后中间的→数值B←表示以什么为中间的循环数,后面的+数值C表示以什么为结尾;

    十三位数的0+→01←+10就是0010101010110;

    十九位数的0+→01←+10就是0010101010101010110;

    常用的→数值B←的取值:

    二位数:00,01,10,11;

    三位数:000,001,010,011,100,101,110,111;

    以此类推,然而并非所有的取值都会用到,只有用到时,才注册,没用到时,不注册;

    注册表:

    定义:

    七位数的→01←+0是A;0101010

    七位数的→10←+0是B;1010100

    七位数的→101←+0是C;1011010

    七位数的→010←+0是D;0100100

    0101010A

    1010100B

    1011010C

    0100100D

    1001010被注册表定义为大于A,小于B;3个1,4个0;

    0010000被注册表定义为小于D;1个1,6个0;

    1100011被注册表定义为大于C;4个1,3个0;

    0111011被注册表定义为大于A,小于B;5个1,2个0;

    1011110被注册表定义为大于C;5个1,2个0;

    1110111被注册表定义为大于C;6个1,1个0;

    0111011被注册表定义为大于A,小于B;5个1,2个0;

    1011101被注册表定义为大于C;5个1,2个0;

    1101110被注册表定义为大于C;5个1,2个0;

    1110111被注册表定义为大于C;6个1,1个0;

    0111011被注册表定义为大于A,小于B;5个1,2个0;

    1011010被注册表定义为等于C;4个1,3个0;

    0100111被注册表定义为大于D,小于A;4个1,3个0;

    [示例完毕]

    为了节省篇幅,以及避免作者使用自然人脑来进行比大小这种运算,而且使用的还是二进制,为了避免麻烦和出错,也就没有使用什么三百位的二进制作为注册表,然而计算机完全可以通过这套算法,生成1KB大小的比大小筛选注册表,从而加速解压缩速度,以及碰撞速度。

    当然了,如果是使用1GB大小的比大小筛选注册表,就可以用于ZB级别的数据快速解压缩了。

    使用循环规则,把一个数控制在尽可能小的范围内,然后使用各种进制的转换,来逆推出其原本是什么数,减少运算次数同时,也加快解压缩速度;减少了大量的无用但必须的运算(试错运算)。

    学编程和做编程,如果不是准备做艺术类的应用程序(比如三维内容显示在二维内)(比如把二维矢量图记录为数据)(艺术类应用程序也或多或少的接触到数学),基本都是纯数学,怎么现在的编程,都不怎么关注数学了?是我坐井观天了么?还是编程已经起源于数学,而又超越了数学???


热门小说推荐: 剑来 圣墟 夜天子 斗破苍穹 永夜君王 斗罗大陆 情欲超市 大团结 乱伦大杂烩 乱伦系列(未删节)