Nearly-Optimal Mergesorts: Fast, Practical Sorting Methods That Optimally Adapt to Existing Runs

05/10/2018
by   J. Ian Munro, et al.
0

We present two stable mergesort variants, "peeksort" and "powersort", that exploit existing runs and find nearly-optimal merging orders with practically negligible overhead. Previous methods either require substantial effort for determining the merging order (Takaoka 2009; Barbay & Navarro 2013) or do not have a constant-factor optimal worst-case guarantee (Peters 2001; Auger, Nicaud & Pivoteau 2015; Buss & Knop 2018). We demonstrate that our methods are competitive in terms of running time with state-of-the-art implementations of stable sorting methods.

READ FULL TEXT

page 16

page 17

page 18

research
09/14/2022

Multiway Powersort

Powersort (Munro Wild, ESA2018) has recently replaced Timsort's subo...
research
04/26/2018

QuickMergesort: Practically Efficient Constant-Factor Optimal Sorting

We consider the fundamental problem of internally sorting a sequence of ...
research
09/22/2018

Adaptive Shivers Sort: An Alternative Sorting Algorithm

We present a stable mergesort, called , that exploits the existence of m...
research
05/22/2018

On the Worst-Case Complexity of TimSort

TimSort is an intriguing sorting algorithm designed in 2002 for Python, ...
research
12/04/2017

The Saukas-Song Selection Algorithm and Coarse Grained Parallel Sorting

We analyze the running time of the Saukas-Song algorithm for selection o...
research
11/25/2019

Fast Fibonacci heaps with worst case extensions

We are concentrating on reducing overhead of heaps based on comparisons ...
research
01/01/2023

Optimization Perspectives on Shellsort

Shellsort is a sorting method that is attractive due to its simplicity, ...

Please sign up or login with your details

Forgot password? Click here to reset