scispace - formally typeset
Journal ArticleDOI

Design and analysis of a data structure for representing sorted lists

Mark R. Brown, +1 more
- 01 Dec 1978 - 
- Vol. 9, Iss: 3, pp 594-614
TLDR
This analysis leads to a data structure for representing sorted lists when the access pattern exhibits a (perhaps time-varying) locality of reference that is substantially simpler and may be practical for lists of moderate size.
Abstract
In this paper we explore the use of 2-3 trees to represent sorted lists. We analyze the worst-case cost of sequences of insertions and deletions in 2-3 trees under each of the following three assumptions: (i) only insertions are performed; (ii) only deletions are performed; (iii) deletions occur only at the small end of the list and insertions occur only away from the small end. Our analysis leads to a data structure for representing sorted lists when the access pattern exhibits a (perhaps time-varying) locality of reference. This structure has many of the properties of the representation proposed by Guibas, McCreight, Plass, and Roberts [1977], but it is substantially simpler and may be practical for lists of moderate size.

read more

Citations
More filters
Journal ArticleDOI

Self-adjusting binary search trees

TL;DR: The splay tree, a self-adjusting form of binary search tree, is developed and analyzed and is found to be as efficient as balanced trees when total running time is the measure of interest.
Proceedings ArticleDOI

Making data structures persistent

TL;DR: This paper develops simple, systematic, and efficient techniques for making linked data structures persistent, and uses them to devise persistent forms of binary search trees with logarithmic access, insertion, and deletion times and O (1) space bounds for insertion and deletion.
Journal ArticleDOI

A locally adaptive data compression scheme

TL;DR: A data compression scheme that exploits locality of reference, such as occurs when words are used frequently over short intervals and then fall into long periods of disuse, is described and proves that it never performs much worse than Huffman coding and can perform substantially better.
Journal ArticleDOI

Planar point location using persistent search trees

TL;DR: This work develops a persistent form of binary search tree that supports insertions and deletions in the present and queries in the past, and provides an alternative to Chazelle's "hive graph" structure, which has a variety of applications in geometric retrieval.
Book

Data Structures and Algorithm Analysis in C

TL;DR: This book provides a proven approach to algorithms and data structures using the exciting Java programming language as the implementation tool and highlights conceptual topics, focusing on ADTs and the analysis of algorithms for efficiency as well as performance and running time.
References
More filters
Book

The Design and Analysis of Computer Algorithms

TL;DR: 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.
Proceedings ArticleDOI

A new representation for linear lists

TL;DR: A key idea is the construction of a number representation behaving as described above, which can be used to model the propagation of modifications in the B-tree along the finger path, with the advantage that access is cheap in the neighborhood of each finger.
Journal ArticleDOI

A Fast Merging Algorithm

TL;DR: An algorithm which merges sorted lists represented as balanced binary trees if the lists have lengths m and n (m $\leq$ n), then the merging procedure runs in O(m log n/m) steps, which is the same order on all comparison-based algorithms for this problem.