Randomized Shellsort: A Simple Oblivious Sorting Algorithm [chapter]

Michael T. Goodrich
2010 Proceedings of the Twenty-First Annual ACM-SIAM Symposium on Discrete Algorithms  
In this paper, we describe a randomized Shellsort algorithm. This algorithm is a simple, randomized, data-oblivious version of the Shellsort algorithm that always runs in O(n log n) time and succeeds in sorting any given input permutation with very high probability. Taken together, these properties imply applications in the design of new efficient privacypreserving computations based on the secure multi-party computation (SMC) paradigm. In addition, by a trivial conversion of this Monte Carlo
more » ... gorithm to its Las Vegas equivalent, one gets the first version of Shellsort with a running time that is provably O(n log n) with very high probability.
doi:10.1137/1.9781611973075.101 dblp:conf/soda/Goodrich10 fatcat:wgokywvd2vdc7eu5ozgc3htine