Update counting_sort.md

This commit is contained in:
krahets 2023-03-23 04:41:08 +08:00
parent 326a56fdd9
commit f4e01ea32e

View file

@ -12,7 +12,7 @@
观察发现,计数排序名副其实,是通过“统计元素数量”来实现排序的。
![counting_sort_overview](counting_sort.assets/counting_sort_overview.png)
![计数排序流程](counting_sort.assets/counting_sort_overview.png)
=== "Java"
@ -195,7 +195,7 @@ $$
## 局限性
看到这里,你也许会觉得计数排序太妙了,咔咔一通操作,时间复杂度就下来了。但实际上与其它算法一样,计数排序也无法摆脱“此消彼长”的宿命,**时间复杂度优化的代价是通用型变差**
看到这里,你也许会觉得计数排序太妙了,咔咔一通操作,时间复杂度就下来了。然而,使用技术排序的前置条件比较苛刻
**计数排序只适用于非负整数**。若想要用在其他类型数据上,则要求该数据必须可以被转化为非负整数,并且不能改变各个元素之间的相对大小关系。例如,对于包含负数的整数数组,可以先给所有数字加上一个常数,将全部数字转化为正数,排序完成后再转换回去即可。