文章目录加载中
Varint编码:不定长二进制整型编码
第一位的 0 或者 1 代表:是否是数字的尾部;剩下的 7 位用于记录数字的二进制。
例如,数字 299 在 int32 下是:
00000000 00000000 00000001 00101011
编码后是:
10101011 00000010
优点很明显:节省了 2 个字节。
对于小于$2^{28}$的 int32 或者 int64,Varint 起到压缩效果。对于大数字,位数反而更多。但是,正常情况下小数字使用频率远远高于大数字。
本文来自心谭博客:xin-tan.com,经常更新web和算法的文章笔记,前往github查看目录归纳:github.com/dongyuanxin/blog
0