Elias Gamma算法和Elias Delta算法

2019-06-12 12:45:27

  Elias Gamma压缩算法利用分解函数将待压缩的数字分解为两个因子,之后分别用元编码和二进制编码来表示这两个因子(刚才都说了嘛,元编码和二进制编码是这些算法的基础构件)。

  该算法的分解函数:X = 2e + d

  其中,X为待压缩的数字,e和d分别为其因子,得到其因子后,我们对于因为e+1采用元编码来表示,对于因子d采用比特宽度为e的二进制来表示。比如X为9,那么X = 23 + 1 ,对于e+1也是4得到的元编码是1110,对于d用比特宽度为3的二进制表示为001,将两者拼接为1110:001,这是十进制数字9后的Elias Gamma编码。

  Elias Gamma算法和Elias Delta算法

  Elias Delta算法是建立在Elias Gamma算法基础上的改进,实际上是实现两次Elias Gamma算法。我们对数字X采用Elias Gamma算法得到了e 和 d ,此时我们需要对e+1再次进行Elias Gamma编码表示,而d因子表示和Elias Gamma算法样。比如上文提到的十进制数字9,第次Elias Gamma算法得到了9 = 23 + 1 ,此时3+1需要再次Elias Gamma:3+1 = 22+ 0 ,因此,采用Elias Delta算法得到的十进制数字9的终编码表示出来是110:00:001。

  alexa是什么  手工外链代发  怎样发贴