【发布时间】:2021-05-04 06:28:42
【问题描述】:
使用两次计数排序如何对数组的元素进行排序?
是否会使用两次精确计数排序?
我知道它与基数排序(这是计数排序的子程序)有关,其中元素通过一次考虑每个数字进行排序。
更多详情:- https://www.geeksforgeeks.org/sort-n-numbers-range-0-n2-1-linear-time/
(请不要将其声明为重复我已经检查过与此相关的帖子。)
将数字转换为基数 n 后,元素将如何成为两位数?请告诉我这个好吗?
提前致谢。
【问题讨论】:
-
重复与否,真的不清楚你在问什么。如果您的问题是
n中的基数排序线性,答案是肯定的。参见维基百科——en.wikipedia.org/wiki/Radix_sort。 -
@semisecure 嘿再次检查,我已附上帖子的链接。
-
@semisecure 基数排序的运行时复杂度(即:比较次数)(由您链接到的维基百科文章正确描述)是 O(n * w) 其中 n 是元素的数量,并且w 是元素的宽度。这里w是2log_2(n),所以这里未修改的基数排序是O(n log n),不是线性的。
标签: algorithm sorting radix-sort