This paper presents a simple dictionary structure designed for a hierarchical memory. The proposed data structure is cache oblivious and locality preserving. A cache-oblivious data structure has memory performance optimized for all levels of the memory hierarchy even though it has no memory-hierarchy-speci c parameterization. A localitypreserving dictionary maintains elements of similar key values stored close together for fast access to ranges of data with consecutive keys.
|
6121
|
Introduction to Algorithms
– Cormen, Leiserson, et al.
- 2001
|
|
447
|
The ubiquitous b{tree
– Comer
- 1979
|
|
401
|
The input/output complexity of sorting and related problems
– Aggarwal, Vitter
- 1988
|
|
296
|
Self-adjusting binary search trees
– Sleator, Tarjan
- 1985
|
|
222
|
External memory algorithms and data structures: Dealing with
– Vitter
- 2000
|
|
217
|
Sorting and Searching, volume 3 of The art of computer programming
– Knuth
- 1973
|
|
203
|
Organization and maintenance of large ordered indexes
– Bayer, McCreight
- 1985
|
|
195
|
On packing R-trees
– Kamel, Faloutsos
- 1993
|
|
190
|
A dichromatic framework for balanced trees
– Guibas, Sedgewick
- 1978
|
|
134
|
An algorithm for the organization of information
– Adel'son-Vel'skii, Landis
- 1962
|
|
113
|
A model for hierarchical memory
– Aggarwal, Alpern, et al.
- 1987
|
|
102
|
The uniform memory hierarchy model of computation. Algorithmica
– Alpern, Carter, et al.
- 1994
|
|
100
|
Hierarchical memory with block transfer
– Aggarwal, Chandra, et al.
- 1987
|
|
93
|
Cache-oblivious B-trees
– Bender, Demaine, et al.
- 2000
|
|
92
|
An analysis of dag-consistent distributed shared-memory algorithms
– Blumofe, Frigo, et al.
- 1996
|
|
91
|
A new data structure for representing sorted lists
– Huddleston, Mehlhorn
- 1982
|
|
66
|
Locality of reference in lu decomposition with partial pivoting
– Toledo
- 1997
|
|
63
|
Preserving order in a forest in less than logarithmic time and linear
– BOAS, P
- 1977
|
|
60
|
Binary search trees of bounded balance
– NIEVERGELT, REINGOLD
- 1973
|
|
58
|
Cache-oblivious algorithms
– Prokop
- 1999
|
|
58
|
Algorithms for parallel memory II: Hierarchical multilevel memories
– Vitter, Shriver
- 1994
|
|
49
|
Cache oblivious search trees via binary trees of small height
– BRODAL, FAGERBERG, et al.
|
|
46
|
A general approach to bulk loading multidimensional index structures
– BERCKEN, SEEGER, et al.
- 1997
|
|
43
|
Design and analysis of a data structure for representing sorted lists
– Brown, Tarjan
- 1980
|
|
41
|
lists: A probabilistic alternative to balanced trees
– Skip
- 1990
|
|
34
|
A sparse table implementation of priority queues
– Itai, Konheim, et al.
- 1981
|
|
32
|
Efficient bulk operations on dynamic R-trees
– Arge, Hinrichs, et al.
|
|
31
|
Tight(er) worst-case bounds on dynamic searching and priority queues
– Andersson, Thorup
- 2000
|
|
29
|
Faster deterministic sorting and searching in linear space
– Andersson
- 1996
|
|
27
|
Optimized predecessor data structures for internal memory
– Rahman, Cole, et al.
- 2001
|
|
25
|
Alternatives to splay trees with o(log n) worst-case access times
– Iacono
- 2001
|
|
25
|
A density control algorithm for doing insertions and deletions in a sequentially ordered file in good worst-case time
– Willard
- 1992
|
|
25
|
Transforming loops to recursion for multi-level memory hierarchies
– Yi, Adve, et al.
- 2000
|
|
24
|
Extending the Hong-Kung model to memory hierachies
– Savage
- 1995
|
|
18
|
Design and implementation of an ecient priority queue. Mathematical Systems Theory
– Boaz, Kaas, et al.
- 1977
|
|
16
|
Virtual memory algorithms
– Aggarwal, Chandra
- 1988
|
|
16
|
Faster deterministic sorting and priority queues in linear space
– Thorup
- 1998
|
|
15
|
Randomized search trees. Algorithmica
– Seidel, Aragon
- 1996
|
|
13
|
Fractal matrix multiplication: a case study on portability of cache performance
– BILARDI, D’ALBERTO, et al.
- 2001
|
|
12
|
Good worst-case algorithms for inserting and deleting records in dense sequential files
– Willard
- 1986
|
|
9
|
Sibling clustering of tree-based spatial indexes for efficient spatial query processing
– Kim, Cha
- 1998
|
|
9
|
Inserting and deleting records in blocked sequential files
– Willard
- 1981
|
|
7
|
The 5 Minute Rule, Ten Years Later
– Gray, Graefe
- 1997
|
|
6
|
Locality preserving dictionaries: Theory and application to clustering in databases
– Raman
- 1999
|
|
5
|
Controlled density sorting
– Melville, Gries
- 1980
|
|
3
|
Maintaining dense sequential in a dynamic environment
– Willard
- 1982
|
|
2
|
Software design using c++. http://cis.stvincent.edu/carlsond/swdesign/swd.html
– Carlson
- 2001
|
|
2
|
Data strcutres and program design
– Kruse, Ryba
- 1998
|