考研数据结构B在线题库每日一练(七十二)
以下是希赛网给大家分享考研数据结构B在线题库每日一练,希望通过刷题可以帮助大家巩固重要知识点,对知识点查漏补缺,祝愿大家能顺利通过考试!
本文提供考研数据结构B在线题库每日一练,以下为具体内容
1、线性表的链式存储结构与顺序(连续)存储结构相比优点是( )。
A、便于插入和删除
B、便于随机存取
C、所有的操作/运算的算法简单
D、便于查找
2、设循环队列中数组的下标范围是0..n-1,其头指针front指向队首元素,rear指向队尾元素,则队列的长度为( )。
A、rear-front
B、rear-front+1
C、(rear-front+1)%(n+1)
D、(rear-front+n+1)%n
3、如果某应用在线性表中最常用的操作是在最后一个元素之后插入一个元素和删除第一个元素,则采用( )存储方式最节省运算时间。
A、仅有头指针的单链表
B、仅有头指针的单循环链表
C、双链表
D、仅有尾指针的单循环链表
4、在长度为n且带头结点的链式存储实现的线性表的第i(0≤i≤n)个位置插入一个元素,需要查找运算( )次。
A、1
B、n-i
C、i
D、n-2
5、在长度为n顺序实现的线性表的第i(1≤i≤n)个位置之前插入一个元素,需要后移( )个元素。
A、i
B、n-i+1
C、n
D、1
1、试题答案:A
试题解析:
对于A,链式存储结构插入和删除不需要移动元素,仅需要修改指针,其操作的时间复杂度为O(1),而顺序存储结构插入和删除均需要移动元素,其操作的时间复杂度为O(n)。对于B,链式存储结构不是随机存取结构而顺序表是随机存取结构,因此B错误;对于C和D,对于已知下标的查找,链表的查找操作需要从头开始,时间复杂度为O(n),而顺序表可以通过下标直接访问,时间复杂度为O(1),因此C和D错误,故本题选A。
2、试题答案:D
试题解析:
在本题中,front指向队首元素,rear指向队尾元素,因此元素个数应当为rear-front+1,因此A错误。再加n是为了保证当rear<front时,计算出的结果是非负数,因此B错误。数组的最大容量为n,因此C错误,故本题选D。
3、试题答案:D
试题解析:
对于仅有头指针的单链表而言,在结尾插入元素的时间复杂度为O(n),删除首元素的时间复杂度为O(1);对于仅有头指针的单循环链表,在结尾处插入元素的时间复杂度为O(n),删除首元素的时间复杂度为O(1);对于双向链表而言,在结尾插入元素的时间复杂度为O(n),删除首元素的时间复杂度为O(1);对于仅有尾指针的单循环链表,在结尾插入元素的时间复杂度为O(1),删除首元素的时间复杂度为O(1)。故本题选D。
4、试题答案:C
试题解析:
链式存储结构不是随机存取结构,因此在本题中查找第i个位置的元素需要从链表的头开始遍历查找链表,查找到第i个链表需要查找运算i次,故本题选C。
5、试题答案:B
试题解析:
对于顺序表的插入操作,若要在第i个位置之前插入一个元素,则需要将第i个位置到第n个位置的元素向后移动1个元素,需要后移的元素个数为n-i+1,故本题选B。
点击查看【完整】试卷>>

