数据结构中排序方法有多少种-问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文

数据结构中排序方法有多少种

知与谁同 2018-07-18 19:37:35 1289
数据结构中排序方法有多少种
分享到
取消 提交回答
全部回答(1)
  • 寒凝雪
    2019-07-17 22:49:51
    1、插入排序(直接插入排序和希尔排序)
    2、选择排序(直接选择排序和堆排序)
    3、交换排序(冒泡排序和快速排序)
    4、归并排序
    5、基数排序
    直接插入排序:逐个将后一个数加到前面的排好的序中。在直接插入排序过程中,对其中一个记录的插入排序称为一次排序;直接插入排序是从第二个记录开始进行的,因此,长度为n的记录序列需要进行n-1次排序才能完成整个序列的排序。时间复杂度为O(n2)。
    希尔排序:希尔排序又称缩小增量排序,增量di可以有各种不同的取法,但最后一次排序时的增量必须为1,最简单可取di+1=di/2(取小)。时间复杂度为O(n(log2n)2)。
    直接选择排序
    说明:每次将后面的最小的找出来插入前面的已排好的序中。同理,具有n个记录的序列要做n-1次排序。
    时间复杂度为O(n2)。
    冒泡排序:两个两个比较,将大的往后移。通过第一次冒泡排序,使得待排序的n个记录中关键字最大的记录排到了序列的最后一个位置上。然后对序列中前n-1个记录进行第二次冒泡排序。。。对于n个记录的序列,共需进行n次冒泡排序。时间复杂度为O(n2)。
    快速排序:又叫分区交换排序,是对冒泡排序方法的一种改进。时间复杂度为O(nlog2n)。
    归并排序:将两个或两个以上的有序数据序列合并成一个有序数据序列的过程。时间复杂度为O(nlog2n)。
    0 0
云计算
使用钉钉扫一扫加入圈子
+ 订阅

时时分享云计算技术内容,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。

推荐文章