public final class BinaryPacking extends Object implements IntegerCODEC
IntegerCODEC ic = new Composition(new BinaryPacking(), new VariableByte()).Note that this does not use differential coding: if you are working on sorted lists, use IntegratedBinaryPacking instead.
For details, please see
Daniel Lemire and Leonid Boytsov, Decoding billions of integers per second through vectorization Software: Practice & Experience http://onlinelibrary.wiley.com/doi/10.1002/spe.2203/abstract http://arxiv.org/abs/1209.2137
Daniel Lemire, Leonid Boytsov, Nathan Kurz, SIMD Compression and the Intersection of Sorted Integers http://arxiv.org/abs/1401.6399
Constructor and Description |
---|
BinaryPacking() |
Modifier and Type | Method and Description |
---|---|
void |
compress(int[] in,
IntWrapper inpos,
int inlength,
int[] out,
IntWrapper outpos)
Compress data from an array to another array.
|
String |
toString() |
void |
uncompress(int[] in,
IntWrapper inpos,
int inlength,
int[] out,
IntWrapper outpos)
Uncompress data from an array to another array.
|
public void compress(int[] in, IntWrapper inpos, int inlength, int[] out, IntWrapper outpos)
IntegerCODEC
compress
in interface IntegerCODEC
in
- input arrayinpos
- location in the input arrayinlength
- how many integers to compressout
- output arrayoutpos
- where to write in the output arraypublic void uncompress(int[] in, IntWrapper inpos, int inlength, int[] out, IntWrapper outpos)
IntegerCODEC
uncompress
in interface IntegerCODEC
in
- array containing data in compressed forminpos
- where to start reading in the arrayinlength
- length of the compressed data (ignored by some
schemes)out
- array where to write the compressed outputoutpos
- where to write the compressed output in outCopyright © 2014. All Rights Reserved.