English
Related papers

Related papers: Insertion Sort is O(n log n)

200 papers

Given a sequence of integers, we want to find a longest increasing subsequence of the sequence. It is known that this problem can be solved in $O(n \log n)$ time and space. Our goal in this paper is to reduce the space consumption while…

Data Structures and Algorithms · Computer Science 2017-12-27 Masashi Kiyomi , Hirotaka Ono , Yota Otachi , Pascal Schweitzer , Jun Tarui

Sorting and hashing are two completely different concepts in computer science, and appear mutually exclusive to one another. Hashing is a search method using the data as a key to map to the location within memory, and is used for rapid…

Data Structures and Algorithms · Computer Science 2007-05-23 William F. Gilreath

This paper studies the average complexity on the number of comparisons for sorting algorithms. Its information-theoretic lower bound is $n \lg n - 1.4427n + O(\log n)$. For many efficient algorithms, the first $n\lg n$ term is easy to…

Data Structures and Algorithms · Computer Science 2017-05-03 Kazuo Iwama , Junichi Teruyama

Sorting is one of the most fundamental algorithms in computer science. Recently, Learned Sorts, which use machine learning to improve sorting speed, have attracted attention. While existing studies show that Learned Sort is empirically…

Data Structures and Algorithms · Computer Science 2025-11-11 Atsuki Sato , Yusuke Matsui

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

The assignment problem takes as input two finite point sets S and T and establishes a correspondence between points in S and points in T, such that each point in S maps to exactly one point in T, and each point in T maps to at least one…

Computational Geometry · Computer Science 2007-05-23 Justin Colannino , Mirela Damian , Ferran Hurtado , John Iacono , Henk Meijer , Suneeta Ramaswami , Godfried Toussaint

We study self-improving sorting with hidden partitions. Our result is an optimal algorithm which runs in expected time O(H(\pi(I)) + n), where I is the given input which contains n elements to be sorted, \pi(I) is the output which are the…

Computational Geometry · Computer Science 2019-02-04 Siu-Wing Cheng , Man-Kwun Chiu , Kai Jin

We assume the permutation $\pi$ is given by an $n$-element array in which the $i$-th element denotes the value $\pi(i)$. Constructing its inverse in-place (i.e. using $O(\log{n})$ bits of additional memory) can be achieved in linear time…

Data Structures and Algorithms · Computer Science 2020-04-22 Grzegorz Guśpiel

In this paper we generalize the idea of QuickHeapsort leading to the notion of QuickXsort. Given some external sorting algorithm X, QuickXsort yields an internal sorting algorithm if X satisfies certain natural conditions. With…

Data Structures and Algorithms · Computer Science 2013-07-12 Stefan Edelkamp , Armin Weiß

We give optimal sorting algorithms in the evolving data framework, where an algorithm's input data is changing while the algorithm is executing. In this framework, instead of producing a final output, an algorithm attempts to maintain an…

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

We consider the fundamental problem of internally sorting a sequence of $n$ elements. In its best theoretical setting QuickMergesort, a combination Quicksort with Mergesort with a Median-of-$\sqrt{n}$ pivot selection, requires at most $n…

Data Structures and Algorithms · Computer Science 2018-04-27 Stefan Edelkamp , Armin Weiß

The pairing heap is a simple "self-adjusting" implementation of a heap (priority queue). Inserting an item into a pairing heap or decreasing the key of an item takes O(1) time worst-case, as does melding two heaps. But deleting an item of…

Data Structures and Algorithms · Computer Science 2022-08-26 Corwin Sinnamon , Robert Tarjan

In this paper, we describe randomized Shellsort--a simple, randomized, data-oblivious version of the Shellsort algorithm that always runs in O(n log n) time and, as we show, succeeds in sorting any given input permutation with very high…

Data Structures and Algorithms · Computer Science 2015-03-13 Michael T. Goodrich

We solve the dynamic Predecessor Problem with high probability (whp) in constant time, using only $n^{1+\delta}$ bits of memory, for any constant $\delta > 0$. The input keys are random wrt a wider class of the well studied and practically…

Data Structures and Algorithms · Computer Science 2011-04-25 D. Belazzougui , A. C. Kaporis , P. G. Spirakis

A simple method to produce a random order type is to take the order type of a random point set. We conjecture that many probability distributions on order types defined in this way are heavily concentrated and therefore sample inefficiently…

Computational Geometry · Computer Science 2020-06-05 Olivier Devillers , Philippe Duchon , Marc Glisse , Xavier Goaoc

We consider the selection problem on a completely connected network of $n$ processors with no shared memory. Each processor initially holds a given numeric item of $b$ bits allowed to send a message of $\max ( b, \lg n )$ bits to another…

Data Structures and Algorithms · Computer Science 2017-12-13 Piotr Berman , Junichiro Fukuyama

This article introduces a new optimization method to improve mergesort's runtime complexity, when sorting sequences that have equal keys to $O(n log_2 k)$, where $k$ is the number of distinct keys in the sequence. When $k$ is constant, it…

Data Structures and Algorithms · Computer Science 2020-12-17 Albert Tedja

We consider the problem of sorting $n$ elements in the case of \emph{persistent} comparison errors. In this model (Braverman and Mossel, SODA'08), each comparison between two elements can be wrong with some fixed (small) probability $p$,…

Data Structures and Algorithms · Computer Science 2018-04-23 Barbara Geissmann , Stefano Leucci , Chih-Hung Liu , Paolo Penna

This article introduces an adaptive sorting algorithm that can relocate elements accurately by substituting their values into a function which we name it the guessing function. We focus on building this function which is the mapping…

Data Structures and Algorithms · Computer Science 2007-05-23 Sheng Bao , De-Shun Zheng

We study the space requirements of a sorting algorithm where only items that at the end will be adjacent are kept together. This is equivalent to the following combinatorial problem: Consider a string of fixed length n that starts as a…

Probability · Mathematics 2007-05-23 Svante Janson