English
Related papers

Related papers: Optimal Hierarchical Layouts for Cache-Oblivious S…

200 papers

The working-set bound [Sleator and Tarjan, J. ACM, 1985] roughly states that searching for an element is fast if the element was accessed recently. Binary search trees, such as splay trees, can achieve this property in the amortized sense,…

Data Structures and Algorithms · Computer Science 2009-07-14 Prosenjit Bose , Karim Douïeb , Vida Dujmović , John Howat

Compact and I/O-efficient data representations play an important role in efficient algorithm design, as memory bandwidth and latency can present a significant performance bottleneck, slowing the computation by orders of magnitude. While…

Data Structures and Algorithms · Computer Science 2018-11-19 Tomáš Gavenčiak , Jakub Tětek

We propose a new and easily-realizable distributed hash table (DHT) peer-to-peer structure, incorporating a random caching strategy that allows for {\em polylogarithmic search time} while having only a {\em constant cache} size. We also…

Networking and Internet Architecture · Computer Science 2007-05-23 Nima Sarshar , Vwani Roychowdhury

We present a new universal source code for distributions of unlabeled binary and ordinal trees that achieves optimal compression to within lower order terms for all tree sources covered by existing universal codes. At the same time, it…

Data Structures and Algorithms · Computer Science 2021-09-06 J. Ian Munro , Patrick K. Nicholson , Louisa Seelbach Benkner , Sebastian Wild

We study a generalized binary search problem on the line and general trees. On the line (e.g., a sorted array), binary search finds a target node in $O(\log n)$ queries in the worst case, where $n$ is the number of nodes. In situations with…

Data Structures and Algorithms · Computer Science 2024-06-19 Agustín Caracci , Christoph Dürr , José Verschae

Write-optimized dictionaries are a class of cache-efficient data structures that buffer updates and apply them in batches to optimize the amortized cache misses per update. For example, a B^epsilon tree inserts updates as messages at the…

Data Structures and Algorithms · Computer Science 2024-04-29 Christopher Chung , William Jannen , Samuel McCauley , Bertrand Simon

The problem of fast items retrieval from a fixed collection is often encountered in most computer science areas, from operating system components to databases and user interfaces. We present an approach based on hash tables that focuses on…

Neural and Evolutionary Computing · Computer Science 2020-07-17 Dan Domnita , Ciprian Oprisa

Supervised hashing aims to map the original features to compact binary codes that are able to preserve label based similarity in the Hamming space. Non-linear hash functions have demonstrated the advantage over linear ones due to their…

Computer Vision and Pattern Recognition · Computer Science 2016-11-17 Guosheng Lin , Chunhua Shen , Qinfeng Shi , Anton van den Hengel , David Suter

The Fenwick tree is a classical implicit data structure that stores an array in such a way that modifying an element, accessing an element, computing a prefix sum and performing a predecessor search on prefix sums all take logarithmic time.…

Data Structures and Algorithms · Computer Science 2019-10-15 Stefano Marchini , Sebastiano Vigna

The paper presents the first \emph{concurrency-optimal} implementation of a binary search tree (BST). The implementation, based on a standard sequential implementation of an internal tree, ensures that every \emph{schedule} is accepted,…

Distributed, Parallel, and Cluster Computing · Computer Science 2017-03-03 Vitaly Aksenov , Vincent Gramoli , Petr Kuznetsov , Anna Malova , Srivatsan Ravi

We consider the design of adaptive data structures for searching elements of a tree-structured space. We use a natural generalization of the rotation-based online binary search tree model in which the underlying search space is the set of…

Data Structures and Algorithms · Computer Science 2019-08-05 Prosenjit Bose , Jean Cardinal , John Iacono , Grigorios Koumoutsos , Stefan Langerman

In this paper we present novel algorithmic techniques with a O(H(N)+N/H(N)) time complexity for performing several types of queries and updates on general rooted trees, binary search trees and lists of size N. For rooted trees we introduce…

Data Structures and Algorithms · Computer Science 2013-03-25 Mugurel Ionut Andreica

We present two cache-oblivious sorting-based convex hull algorithms in the Binary Forking Model. The first is an algorithm for a presorted set of points which achieves $O(n)$ work, $O(\log n)$ span, and $O(n/B)$ serial cache complexity,…

Data Structures and Algorithms · Computer Science 2023-07-18 Reilly Browne , Rezaul Chowdhury , Shih-Yu Tsai , Yimin Zhu

The "ordered set" abstract data type with operations "insert", "erase", "find", "min", "max", "next" and "prev" is ubiquitous in computer science. It is usually implemented with red-black trees, $B$-trees, or $B^+$-trees. We present our…

Data Structures and Algorithms · Computer Science 2025-06-18 Viktor Krapivensky

Non-blocking search data structures offer scalability with a progress guarantee on high-performance multi-core architectures. In the recent past, "learned queries" have gained remarkable attention. It refers to predicting the rank of a key…

Distributed, Parallel, and Cluster Computing · Computer Science 2023-08-23 Gaurav Bhardwaj , Bapi Chatterjee , Abhinav Sharma , Sathya Peri , Siddharth Nayak

In recent years the Cache-Oblivious model of external memory computation has provided an attractive theoretical basis for the analysis of algorithms on massive datasets. Much progress has been made in discovering algorithms that are…

Data Structures and Algorithms · Computer Science 2008-02-08 Benjamin Sach , Raphaël Clifford

Sorting and binary searching a dense array can be considered the simplest and most space efficient form of indexing. This holds especially on GPUs as they exhibit exceptional sorting performance. However, the popular opinion is that such a…

Databases · Computer Science 2026-02-24 Justus Henneberg , Felix Schuhknecht

In this paper, we introduce a local search algorithm for hierarchical clustering. For the local step, we consider a tree re-arrangement operation, known as the {\em interchange}, which involves swapping two closely positioned sub-trees…

Data Structures and Algorithms · Computer Science 2024-05-28 Hossein Jowhari

We define simple variants of zip trees, called zip-zip trees, which provide several advantages over zip trees, including overcoming a bias that favors smaller keys over larger ones. We analyze zip-zip trees theoretically and empirically,…

Data Structures and Algorithms · Computer Science 2025-02-11 Ofek Gila , Michael T. Goodrich , Robert E. Tarjan

Let $n$ denote the number of elements currently in a data structure. An in-place heap is stored in the first $n$ locations of an array, uses $O(1)$ extra space, and supports the operations: minimum, insert, and extract-min. We introduce an…

Data Structures and Algorithms · Computer Science 2014-07-15 Stefan Edelkamp , Jyrki Katajainen , Amr Elmasry