基数排序
从低到高位依次排序
数据量较大但数据范围m较小,m >10^7
虽然高位决定了大小,但是不应该先排,因为每次都是对所有数的进行计数排序,计数排序是稳定的(保证顺序),因为低位的相对顺序不会被破坏
如果用高位
如果每次对所有数进行排序,则最后会按照低位小排列,导致错误;
如果对上一次的结果分批排序,需要大量的空间或者递归,空间复杂度溢出
使用范围:
数据必须可以表示为固定位数的格式,且位数不能过大,尤其是整数。浮点数不适合使用基数排序,因为其位数过大,可能导致时间复杂度超出
优点:稳定排序,空间复杂度低
缺点:非原地排序,非自适应排序,
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 Min的博客!
评论