English
Related papers

Related papers: An Optimal Sorting Algorithm for Persistent Random…

200 papers

We empirically study sorting in the evolving data model. In this model, a sorting algorithm maintains an approximation to the sorted order of a list of data items while simultaneously, with each comparison made by the algorithm, an…

Data Structures and Algorithms · Computer Science 2018-05-16 Juan Jose Besa , William E. Devanny , David Eppstein , Michael Goodrich , Timothy Johnson

We study the periodic assignment problem, in which a set of periodically repeating tasks must be assigned to workers within a repeating schedule. The classical efficiency objective is to minimize the number of workers required to operate…

Data Structures and Algorithms · Computer Science 2025-07-08 Rolf van Lieshout , Bart van Rossum

Sorting an array is a fundamental routine in machine learning, one that is used to compute rank-based statistics, cumulative distribution functions (CDFs), quantiles, or to select closest neighbors and labels. The sorting function is…

Machine Learning · Computer Science 2019-11-05 Marco Cuturi , Olivier Teboul , Jean-Philippe Vert

In this paper we consider the well-studied problem of finding a perfect matching in a d-regular bipartite graph on 2n nodes with m=nd edges. The best-known algorithm for general bipartite graphs (due to Hopcroft and Karp) takes time…

Data Structures and Algorithms · Computer Science 2010-11-15 Ashish Goel , Michael Kapralov , Sanjeev Khanna

We revisit the selection problem, namely that of computing the $i$th order statistic of $n$ given elements, in particular the classic deterministic algorithm by grouping and partition due to Blum, Floyd, Pratt, Rivest, and Tarjan (1973).…

Data Structures and Algorithms · Computer Science 2019-04-09 Ke Chen , Adrian Dumitrescu

Consider a clique of n nodes, where in each synchronous round each pair of nodes can exchange O(log n) bits. We provide deterministic constant-time solutions for two problems in this model. The first is a routing problem where each node is…

Distributed, Parallel, and Cluster Computing · Computer Science 2013-05-13 Christoph Lenzen

We study the shared processor scheduling problem with a single shared processor where a unit time saving (weight) obtained by processing a job on the shared processor depends on the job. A polynomial-time optimization algorithm has been…

Discrete Mathematics · Computer Science 2021-01-19 Dariusz Dereniowski , Wieslaw Kubiak

For an arbitrary initial configuration of discrete loads over vertices of a distributed graph, we consider the problem of minimizing the {\em discrepancy} between the maximum and minimum loads among all vertices. For this problem, this…

Data Structures and Algorithms · Computer Science 2018-05-15 Takeharu Shiraga

We present a deterministic sorting algorithm, SPMS (Sample, Partition, and Merge Sort), that interleaves the partitioning of a sample sort with merging. Sequentially, it sorts $n$ elements in $O(n \log n)$ time cache-obliviously with an…

Data Structures and Algorithms · Computer Science 2017-11-03 Richard Cole , Vijaya Ramachandran

In this paper, we present a low-diameter decomposition algorithm in the LOCAL model of distributed computing that succeeds with probability $1 - 1/poly(n)$. Specifically, we show how to compute an $\left(\epsilon, O\left(\frac{\log…

Data Structures and Algorithms · Computer Science 2023-07-25 Yi-Jun Chang , Zeyong Li

We consider the following fundamental routing problem. An adversary inputs packets arbitrarily at sources, each packet with an arbitrary destination. Traffic is constrained by link capacities and buffer sizes, and packets may be dropped at…

Data Structures and Algorithms · Computer Science 2015-01-27 Guy Even , Moti Medina , Boaz Patt-Shamir

In this paper we study the fundamental problem of maintaining a dynamic collection of strings under the following operations: concat - concatenates two strings, split - splits a string into two at a given position, compare - finds the…

Data Structures and Algorithms · Computer Science 2016-04-11 Paweł Gawrychowski , Adam Karczmarz , Tomasz Kociumaka , Jakub Łącki , Piotr Sankowski

We consider the following problem: given an unsorted array of $n$ elements, and a sequence of intervals in the array, compute the median in each of the subarrays defined by the intervals. We describe a simple algorithm which uses O(n) space…

Data Structures and Algorithms · Computer Science 2009-01-14 Beat Gfeller , Peter Sanders

Finding the length of the longest increasing subsequence (LIS) is a classic algorithmic problem. Let $n$ denote the size of the array. Simple $O(n\log n)$ algorithms are known for this problem. We develop a polylogarithmic time randomized…

Data Structures and Algorithms · Computer Science 2013-08-06 M. Saks , C. Seshadhri

We present an algorithm for phylogenetic reconstruction using quartets that returns the correct topology for $n$ taxa in $O(n \log n)$ time with high probability, in a probabilistic model where a quartet is not consistent with the true…

Populations and Evolution · Quantitative Biology 2010-10-12 Daniel G. Brown , Jakub Truszkowski

We consider the problem of inserting a new item into an ordered list of N-1 items. The length of an algorithm is measured by the number of comparisons it makes between the new item and items already on the list. Classically, determining the…

Quantum Physics · Physics 2007-05-23 E. Farhi , J. Goldstone , S. Gutmann , M. Sipser

We consider the offline sorting buffer problem. The input is a sequence of items of different types. All items must be processed one by one by a server. The server is equipped with a random-access buffer of limited capacity which can be…

Data Structures and Algorithms · Computer Science 2010-09-23 Ho-Leung Chan , Nicole Megow , Rob van Stee , Rene Sitters

We present a new approach for solving (minimum disagreement) correlation clustering that results in sublinear algorithms with highly efficient time and space complexity for this problem. In particular, we obtain the following algorithms for…

Data Structures and Algorithms · Computer Science 2021-09-30 Sepehr Assadi , Chen Wang

TimSort is an intriguing sorting algorithm designed in 2002 for Python, whose worst-case complexity was announced, but not proved until our recent preprint. In fact, there are two slightly different versions of TimSort that are currently…

Data Structures and Algorithms · Computer Science 2019-07-09 Nicolas Auger , Vincent Jugé , Cyril Nicaud , Carine Pivoteau

In the online bipartite matching problem with replacements, all the vertices on one side of the bipartition are given, and the vertices on the other side arrive one by one with all their incident edges. The goal is to maintain a maximum…

Data Structures and Algorithms · Computer Science 2018-05-07 Aaron Bernstein , Jacob Holm , Eva Rotenberg