A Provably, Linear Time, In-place and Stable Merge Algorithm via the Perfect Shuffle
John Ellis, Ulrike Stege

TL;DR
This paper proves that a merge algorithm based on the perfect shuffle is on average linear time, extends it to unequal list lengths, and makes it stable, providing the first provably linear, in-place, stable merge method using perfect shuffle.
Contribution
It offers the first formal proof of average-case linear time complexity for a perfect shuffle-based merge algorithm, including stability and handling unequal list lengths.
Findings
Average case time complexity is linear.
Worst case time complexity is Omega(n^2).
Algorithm can be made stable and extended to unequal list lengths.
Abstract
We reconsider a recently published algorithm (Dalkilic et al.) for merging lists by way of the perfect shuffle. The original publication gave only experimental results which, although consistent with linear execution time on the samples tested, provided no analysis. Here we prove that the time complexity, in the average case, is indeed linear, although there is an Omega(n^2) worst case. This is then the first provably linear time merge algorithm based on the use of the perfect shuffle. We provide a proof of correctness, extend the algorithm to the general case where the lists are of unequal length and show how it can be made stable, all aspects not included in the original presentation and we give a much more concise definition of the algorithm.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsAlgorithms and Data Compression · Advanced Combinatorial Mathematics · semigroups and automata theory
