Efficient Algorithms for Sorting in Trees

05/31/2022
by   Jishnu Roychoudhury, et al.
0

Sorting is a foundational problem in computer science that is typically employed on sequences or total orders. More recently, a more general form of sorting on partially ordered sets (or posets), where some pairs of elements are incomparable, has been studied. General poset sorting algorithms have a lower-bound query complexity of Ω(wn + n log n), where w is the width of the poset. We consider the problem of sorting in trees, a particular case of partial orders, and parametrize the complexity with respect to d, the maximum degree of an element in the tree, as d is usually much smaller than w in trees. For example, in complete binary trees, d = Θ(1), w = Θ(n). We present a randomized algorithm for sorting a tree poset in worst-case expected O(dnlog n) query and time complexity. This improves the previous upper bound of O(dn log^2 n). Our algorithm is the first to be optimal for bounded-degree trees. We also provide a new lower bound of Ω(dn + n log n) for the worst-case query complexity of sorting a tree poset. Finally, we present the first deterministic algorithm for sorting tree posets that has lower total complexity than existing algorithms for sorting general partial orders.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
02/18/2019

Information-theoretic lower bounds for quantum sorting

We analyze the quantum query complexity of sorting under partial informa...
research
11/22/2022

Query Complexity of Inversion Minimization on Trees

We consider the following computational problem: Given a rooted tree and...
research
12/01/2020

Searching, Sorting, and Cake Cutting in Rounds

We study sorting and searching in rounds motivated by a cake cutting pro...
research
05/14/2018

Quadratic Time Algorithms Appear to be Optimal for Sorting Evolving Data

We empirically study sorting in the evolving data model. In this model, ...
research
09/04/2018

A class of orders with linear? time sorting algorithm

In this article, we give a precise mathematical meaning to `linear? time...
research
03/23/2015

A Machine Learning Approach to Predicting the Smoothed Complexity of Sorting Algorithms

Smoothed analysis is a framework for analyzing the complexity of an algo...
research
01/09/2019

Fragile Complexity of Comparison-Based Algorithms

We initiate a study of algorithms with a focus on the computational comp...

Please sign up or login with your details

Forgot password? Click here to reset