数据结构第二章线性表1习题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
线性表专题
一、选择题
1.关于顺序存储的叙述中,哪一条是不正确的( )
A.存储密度大
B.逻辑上相邻的结点物理上不必邻接
C.可以通过计算直接确定第i个结点的位置
D.插入、删除操作不方便
2.长度为n的单链表连接在长度为m的单链表后的算法的时间复杂度为( )
A O(n)
B O(1)
C O(m)
D O(m+n)
3.在n个结点的顺序表中,算法的时间复杂度是O(1)的操作是:( )
A 访问第i个结点(1<=i<=n)和求第i个结点的直接前趋(2<=i<=n)
B 在第i个结点(1<=i<=n)后插入一个新结点
C 删除第i个结点(1<=i<=n)
D 将n个结点从小到大排序
4.一个向量第一个元素的存储地址是100 ,每个元素的长度为2 ,则第5 个元素的地址是:( )
(A )110 ( B )108 (C )100 (D )120
5.已知一个顺序存储的线性表,设每个结点需要占m个存储单元,若第一个结点的地址为da,则第i个结点的地址为:( )
A)da+(i-1)*m B) da+i*m C) da-i*m D) da+(i+1)*m
6.在具有n个结点的单链表中,实现()的操作,其算法的时间复杂度为O(n)。
A)遍历链表和求链表的第i个结点B)在地址为p的结点之后插入一个结点
C)删除开始结点D)删除地址为p的结点的后继结点
7.链表是一种采用()存储结构存储的线性表。
( A )顺序(B )链式( C )星式(D )网状
8.线性表若采用链式存储结构时,要求内存中可用存储单元的地址:()
( A )必须是连续的( B )部分地址必须是连续的
( C )一定是不连续的( D )连续或不连续都可以
9.线性表L在()情况下适用于使用链式结构实现。
(A)需经常修改L中的结点值(B)需不断对L进行删除插入
(C)L中含有大量的结点(D)L中结点结构复杂
10.在长度为n 的顺序表的第i (1≤i≤n+1) 个位置上插入一个元素,元素的移动次数为( )
A.n-i+1
B.n-i
C.i
D.i-1
11.线性表是()。
a、一个有限系列,可以为空
b、一个有限系列,不能为空
c、一个无限系列,可以为空
d、一个无限系列,不能为空
12. ()线性表。
A.(孔子,诸葛亮,曹雪芹)
B.{A,B,C,D}
C.{10,11,12,13,14}
D.(1,2,3,...)
13. ()是表示线性数据结构的。
A.循环链表
B.邻接多重表
C.孩子链表
D.单链表
14. 将线性表的数据元素以()结构存放, 查找一个数据元素所需时间不依赖于表长。
A.循环双链表
B.哈希(Hash)表
C.一维数组
D.单链表
15. 在一个单链表中,若p所指结点不是最后结点,在p之后插入s所指结点,则执行(B)。(A)s->link=p;p->link=s;
(B)s->link=p->link;p->link=s;
(C)s->link=p->link;p=s;
(D)p->link=s;s->link=p;
16. 在循环链表中first为指向链表表头的指针,current为链表当前指针,在循环链表中检测
current是否达到链表表尾的语句是( )。
(A)current->link=NULL (B)first->link=current
(C)first=current (D)current->link=first
17. 从一个具有n个结点的单链表中查找其值等于x结点时,在查找成功的情况下,需平均比较( )
个结点。
A. n
B. n/2
C.(n-1)/2
D. (n+1)/2
18. 在一个具有n个结点的有序单链表中,插入一新结点并仍然有序的时间复杂度为( )。
A. O(1)
B. O(n)
C. O(n2)
D. O(nlog2n)
19. 用链表表示线性表的优点是( )。
A. 便于随机存取
B. 花费的存储空间比顺序表少
C. 便于插入与删除
D. 数据元素的物理顺序与逻辑顺序相同
20. 当需要随机查找线性表的元素时,宜采用( )作存储结构。
A. 双向链表
B. 循环链表
C. 顺序表
D. 单链表
21. 线性表的链接实现有利于()运算。
A、插入b、读表元c、查找d、定位
22. 线性表采用链式存储时,其地址()。
A 必须是连续的
B 部分地址是连续的
C 一定是不连续的
D 连续与否均可以
23. 设单链表中指针p指着结点a,若要删除a之后的结点(若存在),则需要修改指针的操作为()。
A、p->next=p->next->next b、p=p->next
C、p= p->next->next d、p->next=p
24. 向一个有127个元素原顺序表中插入一个新元素并保存原来顺序不变,平均要移动()个元素。
A、8
B、63.5
C、63
D、7
25. 向一个有127 个元素的顺序表中删除一个元素,平均要移动()个元素
(A)8 (B)63.5 (C)63(D)7
26. 用链表表示线性表的优点是()
A 便于插入和删除操作
B 数据元素的物理顺序与逻辑顺序相同
C 花费的存储空间较顺序存储少
D 便于随即存取
27. 以下数据结构中不属于线性数据结构的是()
A 队列
B 线性表
C 二叉树
D 栈
28.对长度为N的线性表进行顺序查找,在最坏情况下所需要的比较次数为()。
A.N+1 B.N C.(N+1)/2 D.N/2
29.下列叙述中正确的是( )。
A. 线性表是线性结构
B. 栈与队列是非线性结构
C. 线性链表是非线性结构
D. 二叉树是线性结构
30.在单链表中,增加头结点的目的是( )。
A. 方便运算的实现
B. 使单链表至少有一个结点
C. 标识表结点中首结点的位置
D. 说明单链表是线性表的链式存储实现
31.线性表的顺序存储结构和线性表的链式存储结构分别是()。
A.顺序存取的存储结构、顺序存取的存储结构
B.随机存取的存储结构、顺序存取的存储结构
C.随机存取的存储结构、随机存取的存储结构
D.任意存取的存储结构、任意存取的存储结构
33.线性表中正确的说法是( )。
A. 每个元素都有一个直接前驱和一个直接后继
B. 线性表至少要求一个元素
C. 表中的元素必须按由小到大或由大到小排序