Results 1  10
of
25
On the Dynamic Finger Conjecture for Splay Trees. Part II: The Proof
 SIAM Journal on Computing
"... The following result is shown: On an nnode splay tree, the amortized cost of an access at distance d from the preceding access is O(log(d + 1)). In addition, there is an O(n) initialization cost. The accesses include searches, insertions and deletions. 1 Introduction The reader is advised that ..."
Abstract

Cited by 45 (1 self)
 Add to MetaCart
The following result is shown: On an nnode splay tree, the amortized cost of an access at distance d from the preceding access is O(log(d + 1)). In addition, there is an O(n) initialization cost. The accesses include searches, insertions and deletions. 1 Introduction The reader is advised that this paper quotes results from the companion Part I paper [CMSS93]; in addition, the Part I paper introduces a number of the techniques used here, but in a somewhat less involved way. The splay tree is a selfadjusting binary search tree devised by Sleator and Tarjan [ST85]. They showed that it is competitive with many of the balanced search tree schemes for maintaining a dictionary. Specifically, Sleator and Tarjan showed that a sequence of m accesses performed on a splay tree takes time O(m log n), where n is the maximum size attained by the tree (n m). They also showed that in an amortized sense, up to a constant factor, on sufficiently long sequences of searches, the splay tree has as ...
Logarithmic lower bounds in the cellprobe model
 SIAM Journal on Computing
"... Abstract. We develop a new technique for proving cellprobe lower bounds on dynamic data structures. This enables us to prove Ω(lg n) bounds, breaking a longstanding barrier of Ω(lg n/lg lg n). We can also prove the first Ω(lgB n) lower bound in the external memory model, without assumptions on the ..."
Abstract

Cited by 34 (4 self)
 Add to MetaCart
Abstract. We develop a new technique for proving cellprobe lower bounds on dynamic data structures. This enables us to prove Ω(lg n) bounds, breaking a longstanding barrier of Ω(lg n/lg lg n). We can also prove the first Ω(lgB n) lower bound in the external memory model, without assumptions on the data structure. We use our technique to prove better bounds for the partialsums problem, dynamic connectivity and (by reductions) other dynamic graph problems. Our proofs are surprisingly simple and clean. The bounds we obtain are often optimal, and lead to a nearly complete understanding of the problems. We also present new matching upper bounds for the partialsums problem. Key words. cellprobe complexity, lower bounds, data structures, dynamic graph problems, partialsums problem AMS subject classification. 68Q17
Static Optimality and Dynamic SearchOptimality in Lists and Trees
, 2002
"... Adaptive data structures form a central topic of online algorithms research, beginning with the results of Sleator and Tarjan showing that splay trees achieve static optimality for search trees, and that MovetoFront is constant competitive for the list update prob lem [ST85a, ST85b]. This paper is ..."
Abstract

Cited by 21 (3 self)
 Add to MetaCart
Adaptive data structures form a central topic of online algorithms research, beginning with the results of Sleator and Tarjan showing that splay trees achieve static optimality for search trees, and that MovetoFront is constant competitive for the list update prob lem [ST85a, ST85b]. This paper is inspired by the observation that one can in fact achieve a 1 + e ra tio against the best static object in hindsight for a wide range of data structure problems via "weighted experts" techniques from Machine Learning, if computational decisionmaking costs are not considered.
SelfOrganizing Data Structures
 In
, 1998
"... . We survey results on selforganizing data structures for the search problem and concentrate on two very popular structures: the unsorted linear list, and the binary search tree. For the problem of maintaining unsorted lists, also known as the list update problem, we present results on the competit ..."
Abstract

Cited by 18 (0 self)
 Add to MetaCart
. We survey results on selforganizing data structures for the search problem and concentrate on two very popular structures: the unsorted linear list, and the binary search tree. For the problem of maintaining unsorted lists, also known as the list update problem, we present results on the competitiveness achieved by deterministic and randomized online algorithms. For binary search trees, we present results for both online and offline algorithms. Selforganizing data structures can be used to build very effective data compression schemes. We summarize theoretical and experimental results. 1 Introduction This paper surveys results in the design and analysis of selforganizing data structures for the search problem. The general search problem in pointer data structures can be phrased as follows. The elements of a set are stored in a collection of nodes. Each node also contains O(1) pointers to other nodes and additional state data which can be used for navigation and selforganizati...
Splay trees, DavenportSchinzel sequences, and the deque conjecture
, 2007
"... We introduce a new technique to bound the asymptotic performance of splay trees. The basic idea is to transcribe, in an indirect fashion, the rotations performed by the splay tree as a DavenportSchinzel sequence S, none of whose subsequences are isomorphic to fixed forbidden subsequence. We direct ..."
Abstract

Cited by 15 (5 self)
 Add to MetaCart
We introduce a new technique to bound the asymptotic performance of splay trees. The basic idea is to transcribe, in an indirect fashion, the rotations performed by the splay tree as a DavenportSchinzel sequence S, none of whose subsequences are isomorphic to fixed forbidden subsequence. We direct this technique towards Tarjan’s deque conjecture and prove that n deque operations require O(nα ∗ (n)) time, where α ∗ (n) is the minimum number of applications of the inverseAckermann function mapping n to a constant. We are optimistic that this approach could be directed towards other open conjectures on splay trees such as the traversal and split conjectures.
Dynamic Optimality–Almost
 Proc. 45th Annu. IEEE Sympos. Foundations Comput. Sci
"... We present an O(lg lg n)competitive online binary search tree, improving upon the best previous (trivial) competitive ratio of O(lg n). This is the first major progress on Sleator and Tarjan’s dynamic optimality conjecture of 1985 that O(1)competitive binary search trees exist. 1. ..."
Abstract

Cited by 11 (1 self)
 Add to MetaCart
We present an O(lg lg n)competitive online binary search tree, improving upon the best previous (trivial) competitive ratio of O(lg n). This is the first major progress on Sleator and Tarjan’s dynamic optimality conjecture of 1985 that O(1)competitive binary search trees exist. 1.
Adaptive Heuristics for Binary Search Trees and Constant Linkage Cost
 In Proc. of the 2nd ACMSIAM Symposium on Discrete Algorithms
, 1995
"... We present lower and upper bounds on adaptive heuristics for maintaining binary search trees using a constant number of link or pointer changes for each operation (constant linkage cost (CLC)). We show that no adaptive heuristic with an amortized linkage cost of o(log n) can be competitive. In part ..."
Abstract

Cited by 8 (0 self)
 Add to MetaCart
We present lower and upper bounds on adaptive heuristics for maintaining binary search trees using a constant number of link or pointer changes for each operation (constant linkage cost (CLC)). We show that no adaptive heuristic with an amortized linkage cost of o(log n) can be competitive. In particular, we show that any heuristic that performs f(n) = o(log n) promotions (rotations) amortized over each access has a competitive ratio of at least \Omega\Gammaast n=f(n)) against an oblivious adversary, and any heuristic that performs f(n) = o(log n) pointer changes amortized over each access has a competitive ratio of at least\Omega\Gamma log n f(n) log(log n=f(n)) ) against an adaptive online adversary. In our investigation of upper bounds we present four adaptive heuristics: ffl A randomized, worstcaseCLC heuristic (R2P) whose expected search time is within a constant factor of the search time using an optimal tree; that is, it is statically competitive ffl A randomized, expecte...
Dynamic Optimality for Skip Lists and BTrees
, 2008
"... Sleator and Tarjan [39] conjectured that splay trees are dynamically optimal binary search trees (BST). In this context, we study the skip list data structure introduced by Pugh [35]. We prove that for a class of skip lists that satisfy a weak balancing property, the workingset bound is a lower bou ..."
Abstract

Cited by 5 (1 self)
 Add to MetaCart
Sleator and Tarjan [39] conjectured that splay trees are dynamically optimal binary search trees (BST). In this context, we study the skip list data structure introduced by Pugh [35]. We prove that for a class of skip lists that satisfy a weak balancing property, the workingset bound is a lower bound on the time to access any sequence. Furthermore, we develop a deterministic selfadjusting skip list whose running time matches the workingset bound, thereby achieving dynamic optimality in this class. Finally, we highlight the implications our bounds for skip lists have on multiway branching search trees such as Btrees, (ab)trees, and other variants as well as their binary tree representations. In particular, we show a selfadjusting Btree that is dynamically optimal both in internal and external memory.
SkipSplay: Toward Achieving the Unified Bound in the BST Model
"... Abstract. We present skipsplay, the first binary search tree algorithm known to have a running time that nearly achieves the unified bound. Skipsplay trees require only O(m lg lg n + UB(σ)) time to execute a query sequence σ = σ1...σm. The skipsplay algorithm is simple and similar to the splay al ..."
Abstract

Cited by 4 (2 self)
 Add to MetaCart
Abstract. We present skipsplay, the first binary search tree algorithm known to have a running time that nearly achieves the unified bound. Skipsplay trees require only O(m lg lg n + UB(σ)) time to execute a query sequence σ = σ1...σm. The skipsplay algorithm is simple and similar to the splay algorithm. 1 Introduction and Related Work Although the worstcase access cost for comparisonbased dictionaries is Ω(lg n), many sequences of operations are highly nonrandom, allowing tighter, instancespecific running time bounds to be achieved by algorithms that adapt to the input sequence. Splay trees [1] are an example of such an adaptive algorithm
6.897: Advanced data structures (Spring 2005), Lecture 3, February 8
, 2005
"... Recall from last lecture that we are looking at the documentretrieval problem. The problem can be stated as follows: Given a set of texts T1, T2,..., Tk and a pattern P, determine the distinct texts in which the patterns occurs. In particular, we are allowed to preprocess the texts in order to be a ..."
Abstract

Cited by 3 (0 self)
 Add to MetaCart
Recall from last lecture that we are looking at the documentretrieval problem. The problem can be stated as follows: Given a set of texts T1, T2,..., Tk and a pattern P, determine the distinct texts in which the patterns occurs. In particular, we are allowed to preprocess the texts in order to be able to answer the query faster. Our preprocessing choice was the use of a single suffix tree, in which all the suffixes of all the texts appear, each suffix ending with a distinct symbol that determines the text in which the suffix appears. In order to answer the query we reduced the problem to rangemin queries, which in turn was reduced to the least common ancestor (LCA) problem on the cartesian tree of an array of numbers. The cartesian tree is constructed recursively by setting its root to be the minimum element of the array and recursively constructing its two subtrees using the left and right partitions of the array. The rangemin query of an interval [i, j] is then equivalent to finding the LCA of the two nodes of the cartesian tree that correspond to i and j. In this lecture we continue to see how we can solve the LCA problem on any static tree. This will involve a reduction of the LCA problem back to the rangemin query problem (!) and then a