数据结构--错题汇总


排序过程中,对尚未确定最终位置的所有元素进行一遍处理称为一“趟”。下列排序中,不可能是快速排序第二趟结果的是()【2019年全国试题10(2分)】

A. 5, 2, 16, 12, 28, 60, 32,72
B. 2, 16, 5, 28, 12, 60, 32, 72
C. 2, 12, 16, 5, 28, 32, 72, 60
D. 5, 2, 12, 28, 16, 32, 72, 60

解答:

第一趟排序,确定一个元素位

第二趟排序,又确定一个或两个元素位置

     当第一趟元素确认的位置为最左或最右时,第二趟排序只能确认一个位置(A,B选项情况)

     当第一趟元素确认位置不是最左或最右时,第二趟能确认2个位置(C选项情况)

答案


设线性表中每个元素有两个数据项k1和k2,现对线性表按一下规则进行排序:先看数据项k1,k1值小的元素在前,大的在后;在k1值相同的情况下,再看k2,k2值小的在前,大的在后。满足这种要求的排序方法是( )
A.先按k1进行直接插入排序,再按k2进行简单选择排序
B.先按k2进行直接插入排序,再按k1进行简单选择排序
C.先按k1进行简单选择排序,再按k2进行直接插入排序
D.先按k2进行简单选择排序,再按k1进行直接插入排序

解答:k1如果先排序,再按k2的值排序,则会导致k1的排序乱掉。所以此题关键在于先排k2,再排k1,这样就不会导致k1乱序。k2的排序无所谓稳定性,所以既可以选择排序也可以插入排序。但是k1的排序必须要有稳定性,否则就无法满足“k1相同的情况下,k2小的在前,大的在后”,所以k1的排序必须是插入排序。答案思路参考:https://blog.csdn.net/q15217237223/article/details/119491763


已知小根堆为8, 15, 10, 21, 34, 16, 12,删除关键字8之后需重建堆,在此过程中,关键字之间的比较次数是( )。

A. 1          B. 2          C. 3           D. 4

解答:堆排序的比较次数计算思路是“如果有两个孩子,对比两次,分别是左孩子和右孩子比,左孩子or右孩子和父节点比;如果一个孩子,对比一次”。所以删除8之后,15和10比,10和12比,12和16比答案


将两个各有 N 个元素的有序表归并成一个有序表,其最多的比较次数是( )。
A.N
B.2N -1
C.2N
D.N -1

解答:表一N-1个元素与表二第一个元素比,表一最后一个元素和表一N个元素比答案


在下列各种数据结构中,查找操作效率较低的是______答案
A.有序顺序表
B.二叉排序树
C.堆
D.平衡二叉树

解答:堆不具备查找功能


做m路平衡归并排序的过程中,为实现输入/内部归并/输出的并行处理,需要设置几个输入缓冲区和输出缓冲区?

解答:为了能够实现内部归并和输入的同步,需多设个m输入缓冲区,为了能够实现内部归并和输出的并行处理,需多设个输出缓冲区

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值