与基数排序法一样,桶排序也是一种排序的思想。
待排数据的值必须在一个范围内,然后把这个值域空间划分为若干区块,每一个对应一个桶,把待排数组放入到合适的桶中,再对桶内的数据采用任意一种方式排序。整个时间复杂度分为两部分,第一部分是入桶,为On,第二部分则是所有桶内排序的时间。《算法导论》中证明了这个整体的时间的期望是On的,因此平均情况下是线性。
排序算法主要分为两大类:
基于比较的,最好为nlogn;
基于非比较的,最好为On,但是需要额外的空间。
与基数排序法一样,桶排序也是一种排序的思想。
待排数据的值必须在一个范围内,然后把这个值域空间划分为若干区块,每一个对应一个桶,把待排数组放入到合适的桶中,再对桶内的数据采用任意一种方式排序。整个时间复杂度分为两部分,第一部分是入桶,为On,第二部分则是所有桶内排序的时间。《算法导论》中证明了这个整体的时间的期望是On的,因此平均情况下是线性。
排序算法主要分为两大类:
基于比较的,最好为nlogn;
基于非比较的,最好为On,但是需要额外的空间。