C语言数据结构——排序

一、排序的基本概念

排序

是对数据元素序列建立某种有序排列的过程,是把一个数据元素序列整理成按关键字递增(或递减)排列的过程。
学生成绩表

关键字

是要排序的数据元素集合中的一个域,排序是以关键字为基准进行的。
主关键字(key)
数据元素值不同时该关键字的值也一定不同,是能够惟一区分各个不同数据元素的关键字;不满足主关键字定义的关键字称为次关键字。

内部排序

是把待排数据元素全部调入内存中进行的排序。

外部排序

是因数量太大,把数据元素分批导入内存,排好序后再分批导出到磁盘和磁带外存介质上的排序方法。

二、比较排序算法优劣的标准:

(1)时间复杂度(最重要的标准)
它主要是分析记录关键字的比较次数和记录的移动次数;O(n2)O(nlbn)
(2)空间复杂度
算法中使用的内存辅助空间的多少;O(1)O(n)
(3)稳定性
使用次关键字排序,若两个记录A和B的关键字值相等,如果排序后A、B的先后次序保持不变,则称这种排序算法是稳定的

三、排序算法性能比较

在这里插入图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值