数据结构内部排序.pptVIP

  • 79
  • 0
  • 约1.21万字
  • 约 80页
  • 2016-12-04 发布于江苏
  • 举报
第十章 内部排序 一、排序(Sorting) 排序:将一个数据元素(或记录)的任意序列,重新排列成一个按关键字有序的序列 内部排序:在排序期间数据对象全部存放在内存的排序; 外部排序:在排序期间全部对象个数太多,不能同时存放在内存,必须根据排序过程的要求,不断在内、外存之间移动的排序。 二、排序基本操作 排序的基本操作包括: 比较:比较两个关键字的大小 移动:将记录从一个位置移动至另一个位置 三、排序时间复杂度 排序的时间复杂度可用算法执行中的记录关键字比较次数与记录移动次数来衡量。 四、排序方法的稳定性 如果在记录序列中有两个记录r[i]和r[j], 它们的关键字 key[i] == key[j] , 且在排序之前, 记录r[i]排在r[j]前面。 如果在排序之后, 记录r[i]仍在记录r[j]的前面, 则称这个排序方法是稳定的, 否则称这个排序方法是不稳定的。 每步将一个待排序的对象, 按其关键字大小, 插入到前面已经排好序的有序表的适当位置上, 直到对象全部插入为止。 一、直接插入排序 当插入第i(i≥1)个对象时, 前面的r[0], r[1], …, r[i-1]已经排好序。 用r[i]的关键字与r[i-1], r[i-2], …的关键字顺序进行比较(和顺序查找类似),如果小于,则将r[x]向后移动(插入位置后的记录向后顺移) 找到插入位置即将r[i]插入 一、直接插

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档