笔试强训(二十二)

一、选择题

(1)下列数据结构具有记忆功能的是(C)
A.队列
B.循环队列
C.栈
D.顺序表

记忆功能是指什么,例如浏览器的回退功能,文本编辑的撤销操作都属于记忆性功能,栈具有先进后出的功能,当对栈进行出栈操作,得到的元素是最后存入的元素

(2)对递归程序进行优化的一般手段为(A)
A.尾递归优化
B.循环优化
C.堆栈优化
D.停止值优化

例如,在进行快速排序时,递归的终止条件是 l>=r;return; l是区间的最左侧,r是区间的最右侧
尾递归优化是指,在递归终止条件处进行优化,当区间中元素个数较少时,采用插入排序来优化

(3)将一棵二叉树的根节点放入队列,然后递归的执行如下操作,将出队节点的所有子节点加入队。以上操作可以实现哪种遍历(D)
A.前序遍历
B.中序遍历
C.后序遍历
D.层序遍历

在上述4中遍历中,用到队列的遍历只有层序遍历,另外三种遍历借助的是栈

(4)有1000个无序的数,希望使用最快的方式找出前50个最大的,最佳的选择是(C)
A.冒泡排序
B.基数排序
C.堆排序
D.快速排序

topK问题,使用堆排序

(5)以下数据结构,说法错误的是(C)
A.红黑树插入操作的平均时间复杂度是O(logN),最坏的时间复杂度是O(logN)
B.B+树插入操作的平均时间复杂度是O(logN),最坏的时间复杂度是O(logN)
C.Hash表插入操作的平均时间复杂度是O(logN),最坏的时间复杂度是O(N)
D.排序链表插入操作的平均时间复杂度是O(N),最坏的时间复杂度是O(N)

Hash表插入的时间复杂度是O(1)

(6)下列排序中,每经过一次元素的交换会产生新的逆序的是(A)
A.快速排序
B.冒泡排序
C.插入排序
D.选择排序

快速排序一次数据交换的过程
在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值