数据结构(六) 七大排序详解

本文介绍了排序的稳定性概念,以及内排序和外排序的区别。接着,文章详细讲解了七大排序算法,并提供了相应的程序代码,包括部分注释。虽然没有进行分步解析,但附带了各排序算法的时间复杂度图。
摘要由CSDN通过智能技术生成

说到排序,我先给大家介绍一个慨念,排序的稳定性。

对于两个或两个以上的关键字相等的记录,排序的结果可能会存在不唯一性,这就牵扯到稳定与不稳定。

假设k1 = k2,k1在k2前面,且排序后的序列,k1,k2对应的值没发生前后变化,就说这种排序是稳定的,反之,不稳定。

如图:


下面再提一个慨念,内排序和外排序。

内排序:在整个排序过程中,待排序的所有记录都被放置在内存 中。

外排序:由于排序的记录太多,不能同时放置在内存中,整个过程,要在内外存之间多次交换数据才行。

下面切入正题,我先对数据结构排序的种类做个分类如图(归并排序不做介绍 ):


下面直接介绍它们对于的程序,在程序中有部分注释,大家可以自行理解。

#include "string.h"
#include "stdio.h"    
#include "stdlib.h"     
#include
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值