Fusion Tree

A fusion tree is a type of tree data structure that implements an associative array on w-bit integers. It uses O(n) space and performs searches in O(logw n) time, which is asymptotically faster than a traditional self-balancing binary search tree, and actually better than the van Emde Boas tree when w is large. It achieves this speed by exploiting certain constant-time operations that can be done on a machine word. Fusion trees were invented in 1990 by Michael Fredman and Dan Willard.

Several advances have been made since Fredman and Willard's original 1990 paper. In 1999 it was shown how to implement fusion trees under the AC0 model, in which multiplication no longer takes constant time. A dynamic version of fusion trees using Hash tables was proposed in 1996 which matched the O(logw n) runtime in expectation. Another dynamic version using Exponential tree was proposed in 2007 which yields worst-case runtimes of O(logw n + log log u) per operation, where u is the size of the largest key. It remains open whether dynamic fusion trees can achieve O(logw n) per operation with high probability.

Read more about Fusion Tree:  How It Works, Sketching, Approximating The Sketch, Parallel Comparison, Desketching

Famous quotes containing the words fusion and/or tree:

    The sadistic person is as dependent on the submissive person as the latter is on the former; neither can live without the other. The difference is only that the sadistic person commands, exploits, hurts, humiliates, and that the masochistic person is commanded, exploited, hurt, humiliated. This is a considerable difference in a realistic sense; in a deeper emotional sense, the difference is not so great as that which they both have in common: fusion without integrity.
    Erich Fromm (1900–1980)

    The body in the grave is like the tree in winter; they conceal their greenness under a show of dryness.... We too must wait for the springtime of the body.
    Marcus Minucius Felix (2nd or 3rd cent. A.D.)