m-Bonsai: a practical compact dynamic trie

From MaRDI portal
M-Bonsai: a practical compact dynamic trie



Abstract: We consider the problem of implementing a space-efficient dynamic trie, with an emphasis on good practical performance. For a trie with n nodes with an alphabet of size sigma, the information-theoretic lower bound is nlogsigma+O(n) bits. The Bonsai data structure is a compact trie proposed by Darragh et al. (Softw., Pract. Exper. 23(3), 1993, p. 277-291). Its disadvantages include the user having to specify an upper bound M on the trie size in advance (which cannot be changed easily after initalization), a space usage of Mlogsigma+O(MloglogM) (which is asymptotically non-optimal for smaller sigma or if nllM) and a lack of support for deletions. It supports traversal and update operations in O(1/epsilon) expected time (based on assumptions about the behaviour of hash functions), where epsilon=(M−n)/M and has excellent speed performance in practice. We propose an alternative, m-Bonsai, that addresses the above problems, obtaining a trie that uses bits in expectation, and supports traversal and update operations in expected time and amortized expected time, for any user-specified parameter (again based on assumptions about the behaviour of hash functions). We give an implementation of m-Bonsai which uses considerably less memory and is slightly faster than the original Bonsai.











This page was built for publication: m-Bonsai: a practical compact dynamic trie

Report a bug (only for logged in users!)Click here to report a bug for this page (MaRDI item Q5384619)