- Unity3D高级编程:主程手记
- 陆泽西
- 417字
- 2022-01-07 14:46:18
2.6.3 其他排序算法概述
其他排序算法的使用频率虽然没有快速排序高,但会在很多特定的系统上出现。
桶排序是将所有元素按一定的大小分成N个组,再对每个组进行快速排序,最终得到有序的数组,并得到N个桶的记录,虽然第一次排序的速度不怎么样,但这N个桶记录下来的信息对后面的程序逻辑有非常大的帮助。比如,如果我们需要进行模糊排序或模糊搜索,桶信息就会有很大的帮助。
基数排序是针对元素的特性来实施的“分配式排序”,利用数字的特性,按个位数、十位数、百位数的性质将元素放入0~9个桶中,不用排序,几次合并后就有了序数组,利用元素特性排序的速度比任何其他排序方式都要快。这种算法思路教会我们,在运用算法时可以从元素的特性着手,找到它的特点就有可能找到更合适的算法。
对于基本的、常用的几种排序算法,我们必须了解,面对比较复杂、难解决的问题,我们需要更广阔的思路,算法在实际运用中并不是固定的,适合的才是最好的,我们应该随着问题环境的变化而变化,找到最佳突破口。