Maintaining order in a linked list

  title={Maintaining order in a linked list},
  author={Paul F. Dietz},
  booktitle={STOC '82},
We present a new representation for linked lists. This representation allows one to efficiently insert objects into the list and to quickly determine the order of list elements. The basic data structure, called an indexed 2-3 tree, allows one to do n inserts in O(nlogn) steps and to determine order in constant time. We speed up the algorithm by dividing the data structure up into log*n layers. The improved algorithm does n insertions and comparisons in O(nlog*n) steps. The paper concludes with… Expand
Maintaining order in a generalized linked list
A representation for linked lists which allows to efficiently insert and delete objects in the list and to quickly determine the order of two list elements and an algorithm which determines the ancestor relationship of two given nodes in a dynamic tree structure of bounded degree in time O(1). Expand
Approximate Indexed Lists
It is shown that a tiny relaxation in precision of the query operations allows a considerable improvement in time complexity and the new data structure has applications in two other problems; namely, list labeling andubset rank. Expand
A Structure-Based Filtering Method for XML Management Systems
This paper proposes a novel method in which the nodes are filtered based on the structural properties of their subtrees, which summarizes the structures of XML documents more accurately than conventional summarization methods. Expand
L-Tree: A Dynamic Labeling Structure for Ordered XML Data
A dynamic labeling structure for XML data: L-Tree and its order-preserving labeling scheme with O(log n) amortized update cost and O( log n) bits per label is introduced. Expand
Insert-Friendly Hierarchical Numbering Schemes for XML
Numbering schemes for labeling XML nodes are the key design element to support generic XML storage and high-efficiency access in relational databases or other reliable stores. In this paper weExpand
Indexing and path query processing for xml data
The extended preorder numbering scheme is proposed, which determines the ancestor-descendant relationship between nodes in the hierarchy of XML data in constant time, and adapts to the dynamics ofxml data by allocating extra space. Expand
Efficient Processing of Multiple Structural Join Queries
This paper proposes a novel way of solving queries with multiple structural joins by maintaining an extra piece of information for each element called nDesc, which specifies the number of descendants having same tag name as that of the element. Expand
LPLX-lexicographic-based persistent labelling scheme of XML documents for dynamic update
This paper proposes a labelling scheme which supports the dynamic update without relabelling the existing nodes and determines the structural relationships efficiently by looking at the labels. Expand
XML Structural Indexes
This chapter discusses the three main categories of indexes proposed in the literature to handle the XML semistructured data model, and discusses limitations and open problems related to the major existing indexing schemes. Expand
SLS: A numbering scheme for large XML documents
A survey of the most efficient numbering schemes and a numbering scheme proposed by the authors and employed in the Sedna DBMS are given. Expand


An Efficient Method for Storing Ancestor Information in Trees
  • D. Maier
  • Mathematics, Computer Science
  • SIAM J. Comput.
  • 1979
This work presents a space efficient method for computing ancestor information in trees, specifically, whether one node is an ancestor of another and the lowest common ancestor of two nodes, and applies it to the problem of finding negative cycles in sparse graphs. Expand
Faster retrieval from context trees
This note presents an algorithm which improves on previous context tree retrieval algorithms, based on the observation that in typical uses context changes are infrequent relative to retrievals, so that data can be cached to speed up retrieval. Expand
The Design and Analysis of Computer Algorithms
This text introduces the basic data structures and programming techniques often used in efficient algorithms, and covers use of lists, push-down stacks, queues, trees, and graphs. Expand
A lazy evaluator
A different way to execute pure LISP programs is presented. It delays the evaluation of parameters and list structures without ever having to perform more evaluation steps than the usual method.Expand
New Programming Languages for Artificial Intelligence Research
An overview of the nature of these features, and their implementation in fourprincipal families of AI language*: SAILPLANNER/COXXIVER; QLISP/INTERLISp; and POPLER,POP-2. Expand
~_Q~. ACM
  • ~_Q~. ACM
  • 1976
Retrieval from Context Trees
]~_gr~J~igA Processin~ Letter~
  • ]~_gr~J~igA Processin~ Letter~
  • 1975
  • MPST
Proc. Rrd. ACM~. 9A PrinciDlesg~F_QEr.a~Ki~K L~%
  • Proc. Rrd. ACM~. 9A PrinciDlesg~F_QEr.a~Ki~K L~%