其他排序
计数排序
适用于数据范围小且已知的情况
时间复杂度 O(N)
构造一个数组,将数据作为数组下标,在数组上计数。最后遍历数组生成排序后的数列。
桶排序
序列的值需要尽量均匀
n个数
数组中的数 *n/(数组中最大的数+1) 放到n个桶里
复杂度 O(N+C) C=N*(logN-logM) N是元素个数,M是有数据的桶的个数
基数排序
以十进制数为例,先排个位,然后一次取出,再排十位,再排百位。。。 需要十个桶
如果是字符串,需要26个桶
时间复杂度 O(K*N)
这三个都是借助空间换时间