计数排序
在书上看到计数排序,实现上觉得确实巧妙,对思维有所拓展,所以这里做个笔记。
计数排序的主要思路就是“地址”<=和=> “值”的等价切换。
原理如图示:
一个很不错的故事:
和这个算法有关的更多介绍和解释:
其实我在看完这个计数排序之后,想到如果范围不是 [0, k)
呢?
那么是否要对数据做个初步运算,比如确认范围只会落在 [7, k)
;那么是否就是将 0~n 位置上的值都减去 7 然后再运行算法。
事实证明这种考虑是正确的,早有人考虑到了,并且想出算法。
不过这个算法比 “减去 7” 更好,就是下面紧接这节的 桶排序。
桶排序 - 待续
n/a