English
Related papers

Related papers: Cache-Friendly Search Trees; or, In Which Everythi…

200 papers

Decision tree algorithms have been among the most popular algorithms for interpretable (transparent) machine learning since the early 1980's. The problem that has plagued decision tree algorithms since their inception is their lack of…

Machine Learning · Computer Science 2023-09-28 Xiyang Hu , Cynthia Rudin , Margo Seltzer

B$^+$-trees are prevalent in traditional database systems due to their versatility and balanced structure. While binary search is typically utilized for branch operations, it may lead to inefficient cache utilization in main-memory…

Databases · Computer Science 2025-04-04 Yuan Chen , Ao Li , Wenhai Li , Lingfeng Deng

We present priority queues in the cache-oblivious external memory model with block size $B$ and main memory size $M$ that support on $N$ elements, operation \textsc{UPDATE} (combination of \textsc{INSERT} and \textsc{DECREASEKEY}) in $O…

Data Structures and Algorithms · Computer Science 2020-08-05 John Iacono , Riko Jacob , Konstantinos Tsakalidis

Search engines play a vital role in day to day life on internet. People use search engines to find content on internet. Cloud computing is the computing concept in which data is stored and accessed with the help of a third party server…

Information Retrieval · Computer Science 2014-11-26 Simran Bijral , Debajyoti Mukhopadhyay

Learning to rank is a machine learning technique broadly used in many areas such as document retrieval, collaborative filtering or question answering. We present experimental results which suggest that the performance of the current…

Information Retrieval · Computer Science 2016-09-20 Michal Ferov , Marek Modrý

We introduce the lazy search tree data structure. The lazy search tree is a comparison-based data structure on the pointer machine that supports order-based operations such as rank, select, membership, predecessor, successor, minimum, and…

Data Structures and Algorithms · Computer Science 2020-10-20 Bryce Sandlund , Sebastian Wild

Lazy search trees (Sandlund & Wild FOCS 2020, Sandlund & Zhang SODA 2022) are sorted dictionaries whose update and query performance smoothly interpolates between that of efficient priority queues and binary search trees - automatically,…

Data Structures and Algorithms · Computer Science 2025-12-17 Casper Moldrup Rysgaard , Sebastian Wild

Indexes are models: a B-Tree-Index can be seen as a model to map a key to the position of a record within a sorted array, a Hash-Index as a model to map a key to a position of a record within an unsorted array, and a BitMap-Index as a model…

Databases · Computer Science 2018-05-01 Tim Kraska , Alex Beutel , Ed H. Chi , Jeffrey Dean , Neoklis Polyzotis

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

We attempt to determine the best order and search algorithm to store $n$ comparable data items in an array, $A$, of length $n$ so that we can, for any query value, $x$, quickly find the smallest value in $A$ that is greater than or equal to…

Data Structures and Algorithms · Computer Science 2017-03-16 Paul-Virak Khuong , Pat Morin

Recently Kubica et al. (Inf. Process. Let., 2013) and Kim et al. (submitted to Theor. Comp. Sci.) introduced order-preserving pattern matching. In this problem we are looking for consecutive substrings of the text that have the same "shape"…

Oblivious RAM (ORAM) is a well-researched primitive to hide the memory access pattern of a RAM computation; it has a variety of applications in trusted computing, outsourced storage, and multiparty computation. In this paper, we study the…

Data Structures and Algorithms · Computer Science 2024-12-16 Thore Thießen , Jan Vahrenhold

Efficiently word storing and searching is an important task in computer science. An application space complexity, time complexity, and overall performance depend on this string data. Many word searching data structures and algorithms exist…

Data Structures and Algorithms · Computer Science 2019-11-06 Rahat Yeasin Emon , Sharmistha Chanda Tista

We describe a model that enables us to analyze the running time of an algorithm in a computer with a memory hierarchy with limited associativity, in terms of various cache parameters. Our model, an extension of Aggarwal and Vitter's I/O…

Hardware Architecture · Computer Science 2007-05-23 Sandeep Sen , Siddhartha Chatterjee , Neeraj Dumir

Data intensive applications on clusters often require requests quickly be sent to the node managing the desired data. In many applications, one must look through a sorted tree structure to determine the responsible node for accessing or…

Distributed, Parallel, and Cluster Computing · Computer Science 2007-05-23 Xiaoqin Ma , Gene Cooperman

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

As secure processors such as Intel SGX (with hyperthreading) become widely adopted, there is a growing appetite for private analytics on big data. Most prior works on data-oblivious algorithms adopt the classical PRAM model to capture…

Distributed, Parallel, and Cluster Computing · Computer Science 2021-07-01 Vijaya Ramachandran , Elaine Shi

Oblivious routing is an attractive paradigm for large distributed systems in which centralized control and frequent reconfigurations are infeasible or undesired (e.g., costly). Over the last almost 20 years, much progress has been made in…

Networking and Internet Architecture · Computer Science 2018-12-27 Harald Räcke , Stefan Schmid

It has been shown in the indexing literature that there is an essential difference between prefix/range searches on the one hand, and predecessor/rank searches on the other hand, in that the former provably allows faster query resolution.…

Data Structures and Algorithms · Computer Science 2018-04-16 Djamal Belazzougui , Paolo Boldi , Rasmus Pagh , Sebastiano Vigna

Decision Tree (DT) Learning is a fundamental problem in Interpretable Machine Learning, yet it poses a formidable optimisation challenge. Practical algorithms have recently emerged, primarily leveraging Dynamic Programming and Branch &…

Machine Learning · Computer Science 2025-05-13 Ayman Chaouki , Jesse Read , Albert Bifet