【数据结构】——期末复习题题库(3)

简介: 【数据结构】——期末复习题题库(3)

🎯问题:

16. (单选题)若线性表最常用的操作是存取第i个元素及其前驱的值,则采用(         )存储方式节省时间。

A. 双向链表

B. 顺序表

C. 单链表

D. 单循环链表

17. (单选题)已知线性表L=(a1,a2,…,ai,…,an),下列说法正确的是(        )。

A. 每个元素都有一个直接前驱和直接后继

B. 线性表中至少要有一个元素

C. 除第一个元素和最后一个元素外,其余每个元素都有一个数,且仅有一个直接前驱和直接后继

D. 表中诸元素的排列顺序必须是由小到大或由大到小的

18. (单选题)线性表若采用链式存储结构时,要求内存中可用存储单元的地址

A. 连续或不连续都可以

B. 必须是连续的

C. 一定是不连续的

D. 部分地址必须是连续的

19. (单选题)线性表是(      )。

A. 一个有限序列,可以为空

B. 一个有限序列,不能为空

C. 一个无限序列,不能为空

D. 一个无限序列,可以为空

20. (单选题)在一个长度为n的顺序表中,在第i个元素(1≤i≤n+1)之前插入一个新元素时须向后移动( )个元素

A. n-i-1

B. n-i+1

C. n-i

D. I

21. (单选题)以下说法错误的是(     )。

A. 顺序存储的线性表可以随机存取

B. 由于顺序存储要求连续存储区域,所以在存储管理上不够灵活

C. 线性表的链式存储结构优于顺序存储结构

D. 求表长、定位这两种运算,在采用顺序存储结构时实现的效率,比采用链式存储结构时实现的效率低

22. (单选题)以下说法正确的是(    )。

A. 线性表的各种基本运算在顺序存储结构上的实现均比在链式存储结构上的实现效率要低

B. 线性结构的基本特征是:每个结点有且仅有一个直接前驱和一个直接后继

C. 在线性表的顺序存储结构中,插入和删除元素时,移动元素的个数与该元素位置有关

D. 顺序存储的线性表的插入和删除操作不需要付出很大的代价,因此平均操作只有近一半的元素需要移动

23. (单选题)在一个具有n个结点的有序单链表L中,设有尾指针r,则与链表的长度有关的操作是(        )。

A. 删除链表中的第一个元素

B. 删除链表中的最后一个元素

C. 在单链表第一个元素前插入一个新元素

D. 在单链表最后一个元素后插入一个新元素

24. (单选题)将两个各有n个元素的有序表归并成一个有序表,其最少的比较次数是

A. 2n-1

B. 2n

C. n-1

D. n

25. (分录题)已知L是带表头的单链表,其P结点既不是首元结点,也不是尾元结点:

a.删除p结点的直接后继的语句是(   )


b.删除p结点的直接前驱的语句是(   )


c.删除p结点的语句序列是(   )


d.删除首元结点的语句序列是(   )


e.删除尾元结点的语句序列是(   )


注意:再输入语句序列时中间以逗号分隔,请勿加入多余的空格!


1.p=p->next;        


2.p->next=p;        


3.p->next=p->next->next;


4.p=p->next->next;          


5.while(p) p=p->next;


6.whlie(Q->next){p=Q;Q=Q->next;}


7.while(p->next!=Q)         p=p->next;


8.while(p->next->next!=Q)    p=p->next;


9.while(p->next->next)     p=p->next;


10.Q=p;          


11.Q=p->next;    


12.p=L;


13.L=L->next;    


14.delete Q;


🎯答案:

15-20:BCAAB


21-24:CCBD


25:


(1) 11,3,14;11,3,14


(2) 10,12,8,11,3,14;10,12,8,11,3,14


(3) 10,12,7,3,14;10,12,7,3,14


(4) 12,11,3,14;12,11,3,14


(5) 9,11,3,14;9,11,3,14


相关文章
|
7月前
|
存储 机器学习/深度学习 NoSQL
【数据结构】——期末复习题题库(8)
【数据结构】——期末复习题题库(8)
【数据结构】——期末复习题题库(8)
|
7月前
|
机器学习/深度学习 存储
【数据结构】——期末复习题题库(7)
【数据结构】——期末复习题题库(7)
【数据结构】——期末复习题题库(7)
|
7月前
|
存储 算法 索引
【数据结构】——期末复习题题库(10)
【数据结构】——期末复习题题库(10)
|
7月前
|
搜索推荐
【数据结构】——期末复习题题库(11)
【数据结构】——期末复习题题库(11)
【数据结构】——期末复习题题库(11)
|
7月前
|
机器学习/深度学习 算法
【数据结构】——期末复习题题库(9)
【数据结构】——期末复习题题库(9)
【数据结构】——期末复习题题库(9)
|
7月前
|
存储 算法 搜索推荐
数据结构期末复习(fengkao课堂)
数据结构期末复习(fengkao课堂)
269 0
|
7月前
|
存储 算法 调度
数据结构期末复习(3)栈和队列
数据结构期末复习(3)栈和队列
65 0
|
1月前
|
C语言
【数据结构】栈和队列(c语言实现)(附源码)
本文介绍了栈和队列两种数据结构。栈是一种只能在一端进行插入和删除操作的线性表,遵循“先进后出”原则;队列则在一端插入、另一端删除,遵循“先进先出”原则。文章详细讲解了栈和队列的结构定义、方法声明及实现,并提供了完整的代码示例。栈和队列在实际应用中非常广泛,如二叉树的层序遍历和快速排序的非递归实现等。
201 9
|
1月前
|
存储 算法
非递归实现后序遍历时,如何避免栈溢出?
后序遍历的递归实现和非递归实现各有优缺点,在实际应用中需要根据具体的问题需求、二叉树的特点以及性能和空间的限制等因素来选择合适的实现方式。
32 1
|
26天前
|
存储 缓存 算法
在C语言中,数据结构是构建高效程序的基石。本文探讨了数组、链表、栈、队列、树和图等常见数据结构的特点、应用及实现方式
在C语言中,数据结构是构建高效程序的基石。本文探讨了数组、链表、栈、队列、树和图等常见数据结构的特点、应用及实现方式,强调了合理选择数据结构的重要性,并通过案例分析展示了其在实际项目中的应用,旨在帮助读者提升编程能力。
52 5