带答案更新的数据结构复习题
15. 已知L是带表头结点的单链表,则删除首元结点的语句序列是( )。 A) L->next =L->next->next; free(L) B) P = L ;L= P->next ;free(P) C) P = L->next ; L->next= P->next ;free(P)
D) P = L ;L= P->next ;free(P)
19. 在栈中由顶向下已存放元素c, b, a 在第4个元素d入栈前,栈中元素可 以出栈,则不可能的出栈序列是
A) dcba
B) cbda
C) cdba
D) cadb
20. 若元素a,b,c,d,e,f依次进栈,允许进栈、退栈操作交替进行,但不允
许连续3次进行退栈操作,则不可能得到的出栈序列是(
)。
29.设s1=”I have_”,s2=”a dream”,则strcat(s1, s2)的值是
I have_ a
dream ,SubString(s1,4,3)的值是 ave 。
30. 设s1=”I am a student”,s2=”a student”,则Index(s1,s2)的值是
。
31. 假设有二维数组A5×6,每个元素用相邻的4个字节存储,存储器按字
C.多对一关系
D.一对一关系
8. 在长度为n的顺序表中插入一个元素,需要平均移动 个元素。
A) n/2
B)n
C) n(n-1)
D) n(n+1)
9.
在有n个元素的顺序表中做插入、删除运算,平均时间复杂度为
。
10. 顺序表中逻辑上相邻的元素物理位置 相邻,单链表中逻辑上相邻 的元素的物理位置 相邻。
A) 线性结构和非线性结构
B) 逻辑结构和物理结构
C) 顺序结构和链式结构
D) 虚拟结构和抽象结构
6. 在数据结构中,数据的存储结构包括 。
A) 线性结构和非线性结构
B) 逻辑结构和物理结构
C) 顺序结构和链式结构
D) 虚拟结构和抽象结构
7. 线性结构的数据元素之间存在一种( )。
A.一对多关系
B.多对多关系
B)front+1==rear
C)front==rear
D)front==0
27. 循环队列用数组A[0‥m-1]存放其数据元素。设front指向其实际的队
头,rear指向其实际队尾的下一个位置,则当前队列中的数据元素有
个。
28 在串的运算中,StrLength(Concat (’aa’,’bb’))的返回值为 A) 0 B) 8 C) 6 D) 4
节编址。已知A的基地址为1000,则数组A的最后一个元素a45的第一个
字节的地址是
;按行存储时,元素a14的第一个字节的地址是
。
32. 已知二维数组A[1..7,1..7]按列存放,其起始存储位置为100,每个
元素占用4个字节,则元素A[4,6]的第一个字节的地址为 。
A)204
B)252
C)208
A.dcebfa B.cbdaef C.bdcaef D.afedcb
21. 设有栈S和队列Q,其初始状态为空,元素a1,a2,a3,a4,a5,a6依次入
栈,出栈的元素进入队列Q。若元素出队列的顺序是a2,a4,a3,a6,a5,a1,
则栈的容量至少是 。
22. 某队列允许在其两端进行入队操作,但仅允许在一端进行出队操
16. 已知L是一带有头结点的单链表的头指针,则该单链表为空的条件是
。
17. 已知P结点是某双向链表的中间结点,则删除P结点的语句序列是
,
,free(P);
18. 设将整数1,2,3,4,5依次进栈,最后都出栈,出栈可以在任何时
刻(只要栈不空)进行,则出栈序列不可能的是(
)。
A) 32415 B) 45231 C) 32145 D) 45321
第七章
1. 单选或填空题
1. 若某有向图的邻接矩阵A只有0和1两种元素,其中aij=1表示有向图
中存在弧<i,j>,则编号为i顶点的入度可用 表示。
A) 邻接矩阵中第i行元素之和
B) 邻接矩阵中第i列元素之和
C) 邻接矩阵中对角线元素之和
D) 以上均不正确
2. 使用邻接表作为某无向图的存储结构,若无向完全图中有n个顶点,
A. front== (rear+1) % m B. front+1== rear
C. front== rear
D. rear== m
26. 在具有n个单元的顺序存储的循环队列中,假定front和rear分别为队
首指针和队尾指针,则判断队空的条件是( )
A)front== (rear+1) % n
A.99 B.98 C.50 D.48
A
B
C
D
E
F
6.把如右图所示的树转换成二叉树时,C是( )
A. A的左子女 B. A的右子女
C. B的左子女 D. B的右子女
7. 设森林F中有3棵树,其结点个数分别是n1、n2和n3,则与森林对应的
二叉树根结点的右子树上的结点个数是 。
A) n1-1
B)n2
D) T=n-1
24. 循环队列是满队列的条件是 。
A)Q.rear=Q.front
B)(Q.rear+1) % maxsize=Q.front
C)Q.rear=0
D)Q.front=0
25. 在具有m个单元的顺序存储的循环队列中,假定front和rear分别为队
首指针和队尾指针,则判断队满的条件是( )
D)256
33. 一个非空广义表的表头( )。
A.一定是子表
B.一定是原子
C.不能是子表
D.可以是原子,也可以是子表
34. 设广义表L=((a,b),c,()),则head(L)= ,tail(L)= 。
第六章
1、 单选或填空题
1. 已知完全二叉树的第7层上有10个叶子结点,则整个二叉树的结点数 最多是
、平方阶O(n2)、
4 以下关于数据结构的基本概念中,叙述正确的是
A) 数据元素是数据不可分割的最小单位。
B) 数据是数据对象的子集。
C) 数据元素之间的关系在计算机中可用顺序映像和非顺序映像两种不
同的方法表示。
D) 数据结构在计算机中的表示又称为逻辑结构。
5. 在数据结构中,数据的逻辑结构包括(
)。
A)必然、必然
B)必然、不一定
C)不一定、必然
D)不一定、不一定
11.相对于顺序存储而言,链式存储的优点是( )。
A.随机存取
B.节约空间
C.增、删操作方便
D.节点间关系简单
12 以下关于头结点的描述中,叙述错误的是 A) 头结点是对链表首元结点的别称 B) 若链表中附设头结点,则头指针一定不为空 C) 头结点中不存储链表的数据元素,而是一些诸如表长之类的辅助信 息 D) 在单链表中附设头结点,插入或删除首元素时不必进行特殊处理 13.已知L是无表头结点的单链表,且P所指结点既不是首元结点,也不 是尾元结点,则在P之后插入S所指结点,则执行( )。
02
5
13
4
25
02
5
13
4
2. 已知无向带权图G的邻接矩阵如下所示。
(1)从顶点a出发,求其深度优先生成树; (2)从顶点a出发,根据普里姆算法构造最小生成树,过程在下面的图 (1)至(5)中画出。 (3)给出邻接表存储结构;
3. 对于如下图所示的带权有向图,求解关键路径, 计算各事件(顶点)
复习题
第一章——第五章
1、 单选或填空题
1. 下列程序段中S语句的执行频度为 。 for(i=0;i<n;i++ ) for(j=0;j<i;j++ ) S;
2. 下列算法的时间复杂度是( )。 for(i=0;i<n;i++ ) c[i]=i;
3. 算法的时间复杂度可表示为 O(1)、线性阶 对数阶O(logn)和指数阶O(2n)等。
C) 0
D) n2+n3
8.在一颗度为4的树T中,若有20个度为4的结点,10个度为3的结点,5
个度为2的结点,10个度为1的结点,则树T的叶结点个数有
个。
9.
一棵二叉树中序遍历结果为DCBAEFG,后序遍历结果为
DCBGFEA。则此二叉树先序遍历的结果应为
A) ABCDEFG B)ABECFDG C)AEBFCGD D)不能确定
A)n2
B)n-1 C)n(n-1)
D) n(n-1)/2
9. 关键路径是AOE网中
A)从源点到汇点的最长路径 B)从源点到汇点的最短路径
C)最长回路 D)最短回路
10. 以下关于图的描述中,正确的是 A) n个顶点的无向完全图有条边。 B) 对任何用顶点表示活动的网络(AOV网)进行拓扑排序的结果是唯 一的。 C) 若图G的邻接矩阵是对称的,则G一定是无向图 D) 有向图的邻接矩阵一定是非对称矩阵 c a b e d 11. 对下图进行拓扑排序,可以得到不同的拓扑序列的个数是()
A.5 B.3 C.2 D.1
12.下图为用边表示活动的AOE-网。则V8的最早发生时间是 。
二、解答题
1. 已知某无向图的邻接表存储结构如下图所示,求解下列问题:
(1)画出它的无向图;
(2)画出它的的邻接矩阵存储结构;
(3)从顶点A出发,画出其广度优先生成树。
0A 1B 2C 3D 4E 5F
14
则邻接表中必存在 个表结点。
A)n2
B)2n C)n(n-1)
D) 2n-1
3. 一个含有n个顶点和e条边的无向图,在其邻接矩阵存储结构中共有