Article thumbnail
Location of Repository

An Improved Bound for Random Binary Search Trees with Concurrent Insertions

By George Giakkoupis and Philipp Woelfel

Abstract

Recently, Aspnes and Ruppert (DISC 2016) defined the following simple random experiment to determine the impact of concurrency on the performance of binary search trees: n randomly permuted keys arrive one at a time. When a new key arrives, it is first placed into a buffer of size c. Whenever the buffer is full, or when all keys have arrived, an adversary chooses one key from the buffer and inserts it into the binary search tree. The ability of the adversary to choose the next key to insert among c buffered keys, models a distributed system, where up to c processes try to insert keys concurrently. Aspnes and Ruppert showed that the expected average depth of nodes in the resulting tree is O(log(n) + c) for a comparison-based adversary, which can only take the relative order of arrived keys into account. We generalize and strengthen this result. In particular, we allow an adversary that knows the actual values of all keys that have arrived, and show that the resulting expected average node depth is D_{avg}(n) + O(c), where D_{avg}(n) = 2ln(n) - Theta(1) is the expected average node depth of a random tree obtained in the standard unbuffered version of this experiment. Extending the bound by Aspnes and Ruppert to this stronger adversary model answers one of their open questions

Topics: random binary search tree, buffer, average depth, concurrent data structures, Data processing Computer science
Publisher: LIPIcs - Leibniz International Proceedings in Informatics. 35th Symposium on Theoretical Aspects of Computer Science (STACS 2018)
Year: 2018
DOI identifier: 10.4230/LIPIcs.STACS.2018.37
OAI identifier: oai:drops-oai.dagstuhl.de:8510

Suggested articles


To submit an update or takedown request for this paper, please submit an Update/Correction/Removal Request.