数据结构之排序算法特点总结 |
您所在的位置:网站首页 › 计算机各种排序方法特点 › 数据结构之排序算法特点总结 |
1.插入与冒泡排序的速度较慢,但是当参加排序的元素局部或整体有序时,能达到较快的速度,这时对于快速排序来说,反而会变慢 1.1对初始状态为递增序列的表按递增顺序排序,最省时间的是插入算法 1.2分别采用堆排序,快速排序,冒泡排序和归并排序,对初态为有序的表,则最省时间的是冒泡算法, 1.3对冒泡算法而言,初始序列为反序时交换次数最多。 2.当n较小时,对于稳定性不做要求时,宜采用选择排序,当对稳定性有要求时,宜选用插入或冒泡排序 3.待排序的记录关键字在一个明显的有限范围内时,且空间允许,使用桶排序 4.当n较大且关键字元素随机,对稳定性也无需求时采用快速排序 5.当n较大且关键字元素有序,对稳定性有要求,且当空间允许时,使用归并排序,否则(对稳定性无要求)用堆排序。 6.如果只想得到1000个元素组成的序列中第5个最小元素之前的部分排序的序列,用堆排序方法最快。 6.1求前k个最大元素选堆排序较好 6.2 在具有n个元素的集合中找第k(1≤k≤n)个最小元素,应使用快速排序方法。 7.对n个记录的线性表进行快速排序为减少算法的递归深度,每次区分后,先处理较短的部分 7.1设待排序记录的个数为n,则快速排序的最小递归深度为log2n(向下取整)+1,最大递归深度n。
与初始序列之间的关系: 1.选择排序、二路归并、二分排序与初始序列无关, 2.冒泡、插入(?)、快速、希尔排序与原始序列有关
分类: 1.堆排序是选择类排序,实际上是一颗完全二叉树结点的层次序列 2.在排序算法中每一项都与其它各项进行比较,计算出小于该项的项的个数,以确定该项的位置叫枚举排序
外部排序: 1.外排序的基本操作过程是生成有序归并串和归并。
其它: 1.在执行某个排序算法过程中,出现了排序码朝着最终排序序列位置相反方向移动,则该算法是不稳定的这个说法是错误的 2.堆未必是一颗平衡二叉树(对与根节点无要求) 3.在内部排序方法中,一趟排序后只有简单选择排序和冒泡排序可以选出一个最大(或最小)元素,并加入到已有的有序子序列中,但要比较n-1次。选次大元素要再比较n-2次,其时间复杂度是O(n2)。从10000个元素中选10个元素不能使用这种方法。而快速排序、插入排序、归并排序、基数排序等时间性能好的排序,都要等到最后才能确定各元素位置。只有堆排序,在未结束全部排序前,可以有部分排序结果。建立堆后,堆顶元素就是最大(或最小,视大堆或小堆而定)元素,然后,调堆又选出次大(小)元素。凡要求在n个元素中选出k(k |
今日新闻 |
点击排行 |
|
推荐新闻 |
图片新闻 |
|
专题文章 |
CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭 |