【软考】数据结构之5大排序(一)

    排序,是将一组随意排列的数据元素又一次排列成一个按键值有序的序列的过程,一般以键值的比較和记录移动为标准操作。排序是程序设计的基础。它往往是为检索服务的。一个优秀的算法离不开切实情景的排序方法。

1.分类:

    排序有两种:

        内部排序(InternalSorting):待排序的记录所有存放在计算机内存中进行排序的过程

        外部排序(ExternalSorting):指待排序记录的数量非常大。以至于内存不能容纳所有记录。在排序过程中尚需外存进行訪问的排序过程

    我们通常所说的5大排序,是编程者运用到程序中的排序方法,一般也被觉得是内部排序的分类

 

 

2.时间复杂度、空间复杂度、稳定性

    在描写叙述排序算法的同一时候。少不了时间复杂度、空间复杂度以及稳定性三方面的度量。

(1)时间复杂度:

最坏时间复杂度:指算法在全部输入下的计算量的最大值作为算法的计算量

平均时间复杂度:指算法在全部输入下的计算量的加权平均值作为算法的计算量

 

(2)空间复杂度:指一个算法除输入数据占存储空间之外所须要的附加存储空间的大小

(3)稳定性:在排序过程中同样的数据元素前后位置不变动,则是该排序算法是稳定的,否则称为不稳定

   排序前33前边,排序后还在二者前后顺序不变。则称用到的排序方法是稳定的

3.小结:

    排序算法是程序设计的重中之重。眼下为止。排序方法远不止几种。人们热衷于研究各种排序方法,一是由于它在算法中占有很重要的位置;二是各种算法各有优缺点,可依据须要运用到不同的场合。当然。这也是作为一名优秀程序猿的必经之路

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值