内部排序-第10章-《数据结构题集》习题解析-严蔚敏吴伟民版

习题集解析部分

第10章 内部排序

——《数据结构题集》-严蔚敏.吴伟民版

       源码使用说明  链接☛☛☛ 《数据结构-C语言版》(严蔚敏,吴伟民版)课本源码+习题集解析使用说明

       课本源码合辑  链接☛☛☛ 《数据结构》课本源码合辑

       习题集全解析  链接☛ 《数据结构题集》习题解析合辑

 

      相关测试数据下载  链接☛ 数据包

 

      本习题文档的存放目录:数据结构\▼配套习题解析\▼10 内部排序

      文档中源码的存放目录:数据结构\▼配套习题解析\▼10 内部排序\▼习题测试文档-10

      源码测试数据存放目录:数据结构\▼配套习题解析\▼10 内部排序\▼习题测试文档-10\Data

 

一、基础知识题

10.1❶以关键码序列(503,087,512,061,908,170,897,275,653,426)为例,手工执行以下排序算法,写出每一趟排序结束时的关键码状态:

  (1)直接插入排序;                            (2)希尔排序(增量d[1]=5);

  (3)快速排序;                                  (4)堆排序;

  (5)归并排序;                                  (6)基数排序。

10.2❶若对下列关键字序列按教科书10.3节和10.5节中所列算法进行快速排序和归并排序,分别写出三次调用过程Partition和过程Merge后的结果。

(Tim,Kay,Eva,Roy,Dot,Jon,Kim,Ann,Tom,Jim,Guy,Amy)

10.3❷试问在10.1题所列各种排序方法中,哪些是稳定的?哪些是不稳定的?并为每一种不稳定的排序方法举出一个不稳定的实例。

10.4❹试问:对初始状态如下(长度为n)的各序列进行直接插入排序时,至多需进行多少次关键字间的比较(要求排序后的序列按关键字自小至大顺序有序)?

    (1)关键字(自小至大)顺序有序;(key1<key2<…<keyn)

    (2)关键字(自大至小)逆序有序;(key1>key2>…>keyn)

    (3)序号为奇数的关键字顺序有序,序号为偶数的关键字顺序有序;

(key1<key3<…,  key2<key4…)

    (4)前半个序列中的关键字顺序有序,后半个序列中的关键字逆序有序:

(key1<key2<…<key└n/2┘,  key└n/2┘+1>…keyn)

10.5❺假设我们把n个元素的序列{a1,a2,…,an}中满足条件ak<max{at}(1≤t<k)的元素ak称为“逆序元素”。若在一个无序序列有一对元素ai>aj(i<j),试问当将ai和aj相互交换之后(即序列由{…ai…aj…}变为{…aj…ai…}),该序列中逆序元素的个数会增加吗?为什么?

10.6❹奇偶交换排序如下所述:第一趟对所有奇数i,将a[i]和a[i+1]进行比较;第二趟对所有的偶数i,将a[i]和a[i+1]进行比较,若a[i]>a[i+1],则将两者交换;第三趟对奇数i;第四趟对偶数i,…,依次类推直至整个序列有序为止。

  (1)试问这种排序方法的结束条件是什么?

  (2)分析当初始序列为正序或逆序两种情况下,奇偶交换排序过程中所需进行的关键字比较的次数。

10.7❷不难看出,对长度为n的记录序列进行快速排序时,所需进行的比较次数依赖于这n个元素的初始排列。

  (1)n=7时在最好情况下需进行多少次比较?请说明理由。

  (2)对n=7给出一个最好情况的初始排列实例。

10.8❹试证明:当输入序列已经呈现为有序状态时,快速排序的时间复杂度为O(n2)。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值