The successor and predecessor problem consists of obtaining the closest value in a set of integers, greater/smaller than a given value. This problem has interesting applications, like the intersection of inverted lists. It can be easily modeled by using a bitvector of size and its operations rank and select. However, there is a practical approach, which keeps the best theoretical bounds, and allows to solve successor and predecessor more efficiently. Based on that technique, we designed a novel compact data structure for bitvectors with runs that achieves access, rank, and successor/predecessor in time by consuming space bits. In practice, it obtains a compression ratio of when the runs are larger than , and becomes the fastest technique, which considers compressibility, in successor/predecessor queries. Besides, we present a recursive variant of our structure, which tends to bits and takes time.

生成讲解博客的中文版本

生成AI智能校验的中文版本