数据结构:笔记-错题

1、假设线性表的长度为n,则在最坏情况下,冒泡排序需要的比较次数为多少次?
n(n-1)/2
2、对n个元素的数组进行(堆排序),其平均时间复杂度和最坏情况下的时间复杂度都是O(nlogn)
排序方法中,最好情况和最坏情况都一样的是选择排序和堆排序,不管初始序列是否有序
选择排序时间复杂度是O(N2)
堆排序时间复杂度是O(NlogN)

3、基于比较方法的n个数据的内部排序。最坏情况下的时间复杂度能达到的最好下界是()
正确答案: A
O(nlogn)
O(logn)
O(n)
O(nn)
解析:最坏情况下只有归并排序和堆排序的复杂度是O(nlogn)其余的都是O(n
n).

4、下列哪个算法是对一个list排序的最快方法?
正确答案: A
快速排序

5、对 n 个记录的文件进行快速排序,所需要的辅助存储空间大致为:
O(1og2n)

6、假设小明用某个排序算法对整数序列(82,45,25,15,21)进行排序。一下为排序过程中序列状态的变化过程:

输入:82 45 25 15 21

第一步:45 82 25 15 21

第二步:25 45 82 15 21

第三步:15 25 45 82 21

······

请问小明用的是什么排序算法?
插入排序
分两部分:有序和无序,然后 将无序部分,一个数字一个个排序。

7、对于排序算法,经常关注的是其时间复杂度和稳定性。下列排序算法中平均时间复杂度是O(NLOGN)且稳定的是?
归并排序
快速排序和堆排序时间复杂度可以达到nlog(n),归并排序的平均时间复杂度也为nlog(n)

快速排序 希尔排序 选择排序 堆排序 是不稳定的排序。其余都为稳定的排序。

8、现有N条词以及对应的拼音串,对其排序,排序规则:首先按拼音串的字母序排序,如果拼音串相同,则按当前词所在的顺序排序,下列哪些排序算法符合条件?( 插入排序和冒泡排序 )

插入排序
快速排序
堆排序
冒泡排序
按当前词所在顺序排序即排序算法要稳定。
选择排序,快速排序,希尔排序,堆排序 都不稳定
冒泡排序,插入排序,归并排序,基数排序 都稳定

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

椒椒。

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值