English
Related papers

Related papers: Smart Sort: Design and Analysis of a Fast, Efficie…

200 papers

In scientific computing, it is common that a mathematical expression can be computed by many different algorithms (sometimes over hundreds), each identifying a specific sequence of library calls. Although mathematically equivalent, those…

Performance · Computer Science 2021-09-15 Aravind Sankaran , Paolo Bientinesi

Sorting a set of items is a task that can be useful by itself or as a building block for more complex operations. That is why a lot of effort has been put into finding sorting algorithms that sort large sets as fast as possible. But the…

Data Structures and Algorithms · Computer Science 2020-10-05 Timo Bingmann , Jasper Marianczuk , Peter Sanders

In this paper, we analyse the dual pivot Quicksort, a variant of the standard Quicksort algorithm, in which two pivots are used for the partitioning of the array. We are solving recurrences of the expected number of key comparisons and…

Data Structures and Algorithms · Computer Science 2015-03-31 Vasileios Iliopoulos , David B. Penman

We explore the fundamental problem of sorting through the lens of learning-augmented algorithms, where algorithms can leverage possibly erroneous predictions to improve their efficiency. We consider two different settings: In the first…

Data Structures and Algorithms · Computer Science 2023-11-03 Xingjian Bai , Christian Coester

Many production-grade algorithms benefit from combining an asymptotically efficient algorithm for solving big problem instances, by splitting them into smaller ones, and an asymptotically inefficient algorithm with a very small…

Data Structures and Algorithms · Computer Science 2017-04-14 Margarita Markina , Maxim Buzdalov

LearnedSort is a novel sorting algorithm that, unlike traditional methods, uses fast ML models to boost the sorting speed. The models learn to estimate the input's distribution and arrange the keys in sorted order by predicting their…

Data Structures and Algorithms · Computer Science 2021-07-08 Ani Kristo , Kapil Vaidya , Tim Kraska

This paper aims to better understand the strengths and limitations of adopting learned-based approaches in sequential sorting numerical data, via two main research steps. First, we study different learned models for distribution-based…

Data Structures and Algorithms · Computer Science 2024-07-03 Paolo Ferragina , Mattia Odorisio

Sorting is the task of ordering $n$ elements using pairwise comparisons. It is well known that $m=\Theta(n\log n)$ comparisons are both necessary and sufficient when the outcomes of the comparisons are observed with no noise. In this paper,…

Information Theory · Computer Science 2024-07-09 Ziao Wang , Nadim Ghaddar , Banghua Zhu , Lele Wang

Sorting is one of the most basic primitives in many algorithms and data analysis tasks. Comparison-based sorting algorithms, like quick-sort and merge-sort, are known to be optimal when the outcome of each comparison is error-free. However,…

Data Structures and Algorithms · Computer Science 2025-05-06 Ragesh Jaiswal , Amit Kumar , Jatin Yadav

In this paper we present TSSort, a probabilistic, noise resistant, quickly converging comparison sort algorithm based on Microsoft TrueSkill. The algorithm combines TrueSkill's updating rules with a newly developed next item pair selection…

Data Structures and Algorithms · Computer Science 2016-06-17 Jörn Hees , Benjamin Adrian , Ralf Biedert , Thomas Roth-Berghofer , Andreas Dengel

We consider the problem of sorting $n$ items, given the outcomes of $m$ pre-existing comparisons. We present a simple and natural deterministic algorithm that runs in $O(m + \log T)$ time and does $O(\log T)$ comparisons, where $T$ is the…

Data Structures and Algorithms · Computer Science 2026-05-06 Bernhard Haeupler , Richard Hladík , John Iacono , Vaclav Rozhon , Robert Tarjan , Jakub Tětek

Sorting is one of the most basic algorithms, and developing highly parallel sorting programs is becoming increasingly important in high-performance computing because the number of CPU cores per node in modern supercomputers tends to…

Distributed, Parallel, and Cluster Computing · Computer Science 2023-09-08 Tomoyuki Tokuue , Tomoaki Ishiyama

We engineer algorithms for sorting huge data sets on massively parallel machines. The algorithms are based on the multiway merging paradigm. We first outline an algorithm whose I/O requirement is close to a lower bound. Thus, in contrast to…

Data Structures and Algorithms · Computer Science 2009-10-15 Mirko Rahn , Peter Sanders , Johannes Singler

QuickXsort is a highly efficient in-place sequential sorting scheme that mixes Hoare's Quicksort algorithm with X, where X can be chosen from a wider range of other known sorting algorithms, like Heapsort, Insertionsort and Mergesort. Its…

Data Structures and Algorithms · Computer Science 2018-11-06 Stefan Edelkamp , Armin Weiß , Sebastian Wild

String sorting is an important part of tasks such as building index data structures. Unfortunately, current string sorting algorithms do not scale to massively parallel distributed-memory machines since they either have latency (at least)…

Data Structures and Algorithms · Computer Science 2024-04-26 Florian Kurpicz , Pascal Mehnert , Peter Sanders , Matthias Schimek

In computer science, sorting algorithms are crucial for data processing and machine learning. Large datasets and high efficiency requirements provide challenges for comparison-based algorithms like Quicksort and Merge sort, which achieve…

Data Structures and Algorithms · Computer Science 2024-10-01 Amin Amini

In-place associative integer sorting technique was proposed for integer lists which requires only constant amount of additional memory replacing bucket sort, distribution counting sort and address calculation sort family of algorithms. The…

Data Structures and Algorithms · Computer Science 2012-09-18 A. Emre Cetin

Merging two sorted arrays is a prominent building block for sorting and other functions. Its efficient parallelization requires balancing the load among compute cores, minimizing the extra work brought about by parallelization, and…

Distributed, Parallel, and Cluster Computing · Computer Science 2014-06-23 Oded Green , Saher Odeh , Yitzhak Birk

Motivated by recent best case analyses for some sorting algorithms and based on the type of complexity we partition the algorithms into two classes: homogeneous and non homogeneous algorithms. Although both classes contain algorithms with…

Data Structures and Algorithms · Computer Science 2010-08-23 Ioannis Paparrizos

The Bulk-Synchronous Parallel model of computation has been used for the architecture independent design and analysis of parallel algorithms whose performance is expressed not only in terms of problem size n but also in terms of parallel…

Distributed, Parallel, and Cluster Computing · Computer Science 2014-08-29 Alexandros V. Gerbessiotis , Constantinos J. Siniolakis