无需额外空间的基数排序
数据结构与算法
2007-06-29 v1
摘要
众所周知,在 RAM 模型中使用基数排序可以在 时间内对范围 内的 个整数进行排序。更一般地,任何范围 内的整数可以在 时间内排序。然而,这些算法使用了 字的额外内存。这是必要的吗?我们提出了一种简单、稳定的整数排序算法,适用于大小为 的字,该算法在 RAM 模型上以 时间运行,且仅使用 字的额外内存。这是实践中最有用的整数排序情形。我们将此结果扩展到键为只读的情形(具有理论意义),并保持相同的界限。另一个有趣的问题是任意 的情形。在此,我们提出了一种黑盒转换方法,可将任何 RAM 排序算法转换为仅使用 额外空间且具有相同运行时间的排序算法。这解决了就地排序复杂度与排序复杂度之间的关系问题。
引用
@article{arxiv.0706.4107,
title = {Radix Sorting With No Extra Space},
author = {Gianni Franceschini and S. Muthukrishnan and Mihai Patrascu},
journal= {arXiv preprint arXiv:0706.4107},
year = {2007}
}
评论
Full version of paper accepted to ESA 2007. (17 pages)