中文

Hash sort:一种线性时间复杂度的多维排序算法

数据结构与算法 2007-05-23 v1

摘要

在计算机科学中,排序和哈希是两个完全不同的概念,且看似互斥。哈希是一种搜索方法,使用数据作为键将其映射到内存中的位置,用于快速存储和检索。排序是将数据从随机排列组织为有序排列的过程,是各种应用中频繁执行的常见活动。几乎所有传统排序算法都通过比较工作,因此其算法时间复杂度具有对数线性下确界。排序算法理论时间复杂度的任何改进都可能导致实现性能的更大整体收益。算法性能的提升会为使用该排序算法的应用带来更大的速度提升。这样的排序算法需要使用比较以外的替代方法来对数据进行排序,以突破算法性能的对数线性时间复杂度边界。Hash sort 是一种通用的基于哈希的非比较排序算法,具有传统排序算法中没有的一些有趣特性。Hash sort 在渐近意义上优于最快的传统排序算法 quick sort。Hash sort 算法具有线性时间复杂度因子——即使在最坏情况下也是如此。Hash sort 开辟了进一步研究和探索替代排序方法的领域。

关键词

引用

@article{arxiv.cs/0408040,
  title  = {Hash sort: A linear time complexity multiple-dimensional sort algorithm},
  author = {William F. Gilreath},
  journal= {arXiv preprint arXiv:cs/0408040},
  year   = {2007}
}