Results 1 
5 of
5
Making Data Structures Persistent
, 1989
"... This paper is a study of persistence in data structures. Ordinary data structures are ephemeral in the sense that a change to the structure destroys the old version, leaving only the new version available for use. In contrast, a persistent structure allows access to any version, old or new, at any t ..."
Abstract

Cited by 250 (6 self)
 Add to MetaCart
This paper is a study of persistence in data structures. Ordinary data structures are ephemeral in the sense that a change to the structure destroys the old version, leaving only the new version available for use. In contrast, a persistent structure allows access to any version, old or new, at any time. We develop simple, systematic, and effiient techniques for making linked data structures persistent. We use our techniques to devise persistent forms of binary search trees with logarithmic access, insertion, and deletion times and O(1) space bounds for insertion and deletion.
The String BTree: A New Data Structure for String Search in External Memory and its Applications.
 Journal of the ACM
, 1998
"... We introduce a new textindexing data structure, the String BTree, that can be seen as a link between some traditional externalmemory and stringmatching data structures. In a short phrase, it is a combination of Btrees and Patricia tries for internalnode indices that is made more effective by a ..."
Abstract

Cited by 122 (12 self)
 Add to MetaCart
We introduce a new textindexing data structure, the String BTree, that can be seen as a link between some traditional externalmemory and stringmatching data structures. In a short phrase, it is a combination of Btrees and Patricia tries for internalnode indices that is made more effective by adding extra pointers to speed up search and update operations. Consequently, the String BTree overcomes the theoretical limitations of inverted files, Btrees, prefix Btrees, suffix arrays, compacted tries and suffix trees. String Btrees have the same worstcase performance as Btrees but they manage unboundedlength strings and perform much more powerful search operations such as the ones supported by suffix trees. String Btrees are also effective in main memory (RAM model) because they improve the online suffix tree search on a dynamic set of strings. They also can be successfully applied to database indexing and software duplication.
ExternalMemory Computational Geometry
, 1993
"... In this paper, we give new techniques for designing efficient algorithms for computational geometry problems that are too large to be solved in internal memory, and we use these techniques to develop optimal and practical algorithms for a number of important largescale problems. We discuss our algor ..."
Abstract

Cited by 121 (20 self)
 Add to MetaCart
In this paper, we give new techniques for designing efficient algorithms for computational geometry problems that are too large to be solved in internal memory, and we use these techniques to develop optimal and practical algorithms for a number of important largescale problems. We discuss our algorithms primarily in the contex't of single processor/single disk machines, a domain in which they are not only the first known optimal results but also of tremendous practical value. Our methods also produce the first known optimal algorithms for a wide range of twolevel and hierarchical muir{level memory models, including parallel models. The algorithms are optimal both in terms of I/0 cost and internal computation.
An Overview over RedBlack and Finger Trees
, 1992
"... 2 1 1 Figure 1: A redblack tree. The darkened nodes are black nodes. The external nodes are denoted by squares. Shown with each node is its rank. Wyk give another, simpler, implementation of finger trees. They describe a finger data structure which is a modification of redblack trees, but othe ..."
Abstract
 Add to MetaCart
2 1 1 Figure 1: A redblack tree. The darkened nodes are black nodes. The external nodes are denoted by squares. Shown with each node is its rank. Wyk give another, simpler, implementation of finger trees. They describe a finger data structure which is a modification of redblack trees, but other forms of balanced trees could be used as a basis for the structure. The two problems presented in Chapters 3 and 4 rely on the use of redblack and finger trees respectively. In this chapter we give a fairly complete overview of redblack trees, of the finger trees introduced by Tarjan and Van Wyk, and of a variant of these which we use in Chapter 4. The material here is intended to be comprehensive and useful as an introduction to these two types of data structures. Re  ack rees A redblack tree is a full binary tree in which each node is assigned a color, either red or black. The leaves are called
A New Data Structure for Representing Sorted Lists*
"... Summary. In this paper we explore the use of weak Btrees to represent sorted lists. In weak Btrees each node has at least a and at most b sons where 2a
Abstract
 Add to MetaCart
Summary. In this paper we explore the use of weak Btrees to represent sorted lists. In weak Btrees each node has at least a and at most b sons where 2a<b. We analyse the worst case cost of sequences of insertions and deletions in weak Btrees. This leads to a new data structure (levellinked weak Btrees) for representing sorted lists when the access pattern exhibits a (timevarying) locality of reference. Our structure is substantially simpler than the one proposed in [7], yet it has many of its properties. Our structure is as simple as the one proposed in [5], but our structure can treat arbitrary sequences of insertions and deletions whilst theirs can only treat noninteracting insertions and deletions. We also show that weak Btrees support concurrent operations in an efficient way. 1.