Tiny Pointers

11/24/2021
by   Michael A. Bender, et al.
0

This paper introduces a new data-structural object that we call the tiny pointer. In many applications, traditional log n-bit pointers can be replaced with o (log n )-bit tiny pointers at the cost of only a constant-factor time overhead. We develop a comprehensive theory of tiny pointers, and give optimal constructions for both fixed-size tiny pointers (i.e., settings in which all of the tiny pointers must be the same size) and variable-size tiny pointers (i.e., settings in which the average tiny-pointer size must be small, but some tiny pointers can be larger). If a tiny pointer references an element in an array filled to load factor 1 - 1 / k, then the optimal tiny-pointer size is Θ(logloglog n + log k) bits in the fixed-size case, and Θ (log k) expected bits in the variable-size case. Our tiny-pointer constructions also require us to revisit several classic problems having to do with balls and bins; these results may be of independent interest. Using tiny pointers, we revisit five classic data-structure problems: the data-retrieval problem, succinct dynamic binary search trees, space-efficient stable dictionaries, space-efficient dictionaries with variable-size keys, and the internal-memory stash problem. These are all well-studied problems, and in each case tiny pointers allow for us to take a natural space-inefficient solution that uses pointers and make it space-efficient for free.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
04/26/2020

Succinct Filters for Sets of Unknown Sizes

The membership problem asks to maintain a set S⊆[u], supporting insertio...
research
08/31/2022

Space-efficient data structure for next/previous larger/smaller value queries

Given an array of size n from a total order, we consider the problem of ...
research
11/03/2021

Nearly Tight Lower Bounds for Succinct Range Minimum Query

Given an array of distinct integers A[1… n], the Range Minimum Query (RM...
research
05/10/2022

PaCHash: Packed and Compressed Hash Tables

We introduce PaCHash, a hash table that stores its objects contiguously ...
research
03/26/2020

Succinct Dynamic Ordered Sets with Random Access

The representation of a dynamic ordered set of n integer keys drawn from...
research
11/14/2018

Rice-Marlin Codes: Tiny and Efficient Variable-to-Fixed Codes

Marlin is a Variable-to-Fixed (VF) codec optimized for high decoding spe...
research
09/20/2018

Small Uncolored and Colored Choice Dictionaries

A choice dictionary can be initialized with a parameter n∈N and subseque...

Please sign up or login with your details

Forgot password? Click here to reset