当前位置:文档之家› 哈工程历年数据结构试题

哈工程历年数据结构试题

哈工程历年数据结构试题
哈工程历年数据结构试题

05年招收硕士研究生入学考试试题

科目名称:数据结构试题编号:429 共3页

一.判断题(每小题1分,共10分)

1.若一个算法中的语句频度之和为T(n)=1024n+4nlogn,则算法的时间复杂度为0(nlogn)

2.串是一种特殊的线性表。

3.两个栈共享一个向量空间的优点是其中一个栈可用该空间一半或一半以上。4.广义表是非线性数据结构,因为表中的元素可以是子表。

5.二叉树的中序序列中,结点A在结点B之前的条件是A是B的祖先。

6.若一个有向图的拓扑排序没有包括全部顶点,则说明该图存在有向回路。7.具有几个顶点e条边的无向图,若用邻接矩阵作为存储结构,则求任一顶点的度数的时间复杂度为0(e).

8.哈希法既是一种查找方法,又是一种存储方法。

9.希尔排序是属于插入排序的改进方法。

10.在单链表上可以实现简单选择排序,但难以实现堆(选择)排序。

二.填空题(每小题2分,共20分)

1.在字符串S=“structure”中,以t为首字符的子串有——个。

2.N阶的下三角阵按行序为主序存储,每个元素占L个单元,若已知首地址为loc(A00 ),则元素Aij(0≤j≤i≤n-1)的存储地址loc(Aij)为——

3.已知一个栈的入栈序列是1,2,3,……,n,其输出序列为P1,P2,P3,……,Pn。若P1=n,则Pi为——

4.已知广义表LS=(a,(b,c,d),e)运用head和tail函数取出LS中的原子b的运算是——

5.在一棵具有h层的满三叉树中,结点总数为——

6.已知在一棵含有n个结点的树中,只有度为3和度为0的结点,则树中度为0的结点数为——

7.设树T的度为4,其中度为1,2,3,4的结点树分别为4,2,1,1,则听众叶子数为——

8.在含有20个关键字的4阶B-树中进行查找,至多访问——个结点。

9.将m个互为冲突(具有相同的哈希地址)的记录存入哈希表,处理冲突采用伪随机探测法。最多需要探测——次。

10.将30个记录分成5块,进行分块查找,平均查找长度是——。

三,单选题(每小题2分,共30分)

1.算法是指——

A.可执行程序。B。问题求解的计算方法。C。系统软件。D。解决问题的有限运算序列。

2.从逻辑上可以把数据结构分成——结构。

A.动态和静态

B.紧凑和非紧凑

C.线性和非线性

D.内部和外部

3.将长度为n的单链表链接在长度为m的单链表之后的算法的时间复杂度为——A.0(1)

B.0(n)

C.0(m)

D.0(m+n)

4.长度为n(1…n)的顺序循环队列中,front和rear分别指示队首和队尾。判断队列满的条件为——

A.rear%n=front

B.front%n+1=rear

C.rear%n-1=front

D.rear%n+1=front

5.设二叉树有2n个结点,则对于m

A.n个度为0

B.2m个度为0

C.2m个度为1

D.2m个度为2

6.某n>0个结点的二叉树的先序序列正好相反,则该二叉树一定不是——的二叉树。A.任一结点无左孩子

B.任一结点无右孩子

C.深度为n

D.存在度为2的结点

7.二叉树用二叉链表表示,若要将其所有结点的左,右子树相互交换位置,则采用下列——遍历的方法较为合适。

A.先序

B.中序

C.后序

D.按层

8.对于二叉树的两个结点X和Y,应该选择——两个序列来判断X是否Y 的祖先。A.先序和后序

B.先序和中序

C.中序和后序

D.任意两个序列都行

9.最小生成树指的是连通图中——

A.边数最少的生成树

B.顶点相对较少的生成树

C.极小连通子图

D.所有生成树中权值之和最小的生成树

10.具有n个顶点的强连通图至少有——条弧。

A.n-1

B.n

C.2n

D.n(n-1)

11.对20 个有序记录进行折半查找,查找成功的平均查找长度为——

A.5

B.37/10

C.39/10

D.41/10

12.哈希表长度为m,哈希函数H(K)=K%P,一般来说P应取小于m的最大——A.奇数

B.偶数

C.素数

D.合数

13.对动态查找有高效率的查找表组织结构是——

A.有序表

B.分块有序表

C.循环链表

D B-树

14.当初始数据有序时,不应采用——

A.堆排序

B.快速排序

C.基数排序

D.希尔排序

15.在n个元素中找出两个最小的元素,当n很大时,采用——方法比较次数较少。A.树型选择排序

B.简单选择排序

C.归并排序

D.快速排序

四.综合题(每小题10分,共40分)

1.一棵二叉树的先序,中序,后序序列分别如下:(其中有部分结点未显示出来)先序序列:_B_F_ICEH_G

中序序列:D_KFIA_EJC_

后序序列:_K_FBHJ_G_A

(1)。将先序,中序,后序序列完整写出来。

(2)。画出该二叉树。

2.对关键字序列{Jan,Feb,Mar,Apr,May,June,July,Aug,Sep,Oct,Nov,Dec}

(1).构造一棵平衡二叉(排序)树

(2)。求其查找成功的平均查找长度ASL。

3对无向加权图:

(1)用普里姆算法从顶点①出发求其最小生成树,并写出选点顺序。

(2)用克鲁斯卡尔算法求其最小生成树,并写出选边顺序

4.给出的3阶B-树:

(1)。写出对给出的B-树依次插入关键字29,25,84,6后的B-树。

(2)。写出对给出的B-树依次删除关键字11,49,52,36后的B-树。

五.算法题(第1,2,3题各12分,第4题14分,共50分)

1.对用二叉链表表示的二叉树,设计一个算法,求其后序序列的第一个结点。

2.完全二叉树顺序存储在数组A[1…n]中,请写一算法:求下标为i和j的两个结点的所有公共祖先结点,并按下标从大到小的顺序将它们的值打印出来。

3.长度为n的字符串存储在结点大小为1的单链表中。试写一算法,判断字符串是否中心对称(例如:‘abccba’是中心对称)。

4.已知一棵满二叉树顺序存储在数组B[1…n]中,设计一个算法,产生二叉树的二叉链表。

哈尔滨工程大学2003年数据结构考研试题

一判断题(每小题一分,共十分)

1 数据结构,数据元素,数据项在计算机中的映象(表示)分别称为存储结构,结点,数据域。对

2 线性表的逻辑顺序与存储顺序总是一致的。错

3 广义表的表头或是元素或是一个广义表,而表尾总是一个广义表。对

4 拓扑排序是一种内部排序的算法。错

5 字符串是一种特殊的线性表,其特殊性体现在数据元素是一个字符。对

6 若线索二叉树有n个结点,则必有n+1条不空的指向树中结点的线索。错

7 稀疏矩阵的压缩存储方法一般有三元组和十字链表两种。对

8 在AOE网中,一定有不止一条关键路径。错

9 二维数组是其数据元素为线性表的线性表。对

10 一个栈的输入序列是12345,则输出序列43512是可能的。错

二单项选择(每小题2分,共20分)

1 数据结构从逻辑上可以分成线性和非线性两种结构。

2 哈希(Hash)法查找的基本思想是根据关键字值来决定记录的存储位置。

3 利用栈求表达式((A-B)-C)-(D-(E-F)),操作数栈须有

4 项。

4 图的广度优先搜索算法类似于二叉树的按层遍历操作。

5 在所有排序方法中关键字比较次数与记录初始排列次序有关的是插入排序。

6 二维数组A的行下标从1到8,列下标从1到10,若每个元素占3个单元,则该数组按“以列序为主序”存放时,A[5][8]的起始位置是180

7 表达式a*(b+c)-d的后缀表示(逆波兰式)是abc+*d-

8 在一个具有n个结点的单链表中查找,查找成功时需要平均计较(n+1)/2 结点。

9 设Q[0……n-1]为循环队列,front,rear分别为队列的头,尾,则队列中的元素个数为(rear-front+n) MOD n

10 在各种查找方法中,平均查找长度与结点个数无关的查找方法是二叉树查找

三计算题(每小题6分,共30分)

1 一颗树有N1个度为1的结点,N2个度为2的结点…………,Nm个度为m的结点,求:该树中终端(叶)结点的个数N0

2 对长度为12的有序表进行折半查找,求查找成功与不成功时各平均比较次数。

3 已知一颗3阶的B-树中含有25个关键字,求该B-树的最小高度和最大高度(不包含叶子层)

4 已知一棵平衡二叉树的深度为6,求树中最少可能的结点数和最多可能的结点数。

5 对n个结点的平衡二叉树,请分别求出当二叉树具有最小深度K和最大深度K时,第K 层上的结点数。

四综合题(每小题8分,共40分)

1 广义表A=((a),(b,(c,d,e)),()),请写出其链式存储结构。设链表中有两类结点,表结点形式为tag=1 hp tp ,其中指针hp和tp分别指向表头

和表尾,元素(原子)结点形式为tag=0 元素值

2 对关键字序列(49,38,65,97,75,13,27,51,55,10)进行希尔排序。若排序三趟,各趟的增量分别为d1=5 ,d2=

3 ,d3=1 ,则请写出每趟的结果及元素移动次数。

3 电文中使用字符a,b,c,d,e,f,他们出现的频率为(4,7,5,2,9,8),请画出对应的编码哈夫曼树,并求出传送电文的总长度。

4 已知一棵二叉树的中序序列为DAJFBGICEHK,后序序列为DAFBJCIKHEG,请画出该二叉树,并使其成为先序线索树。

5 对于加权图

12

6

8 15 13

4 16

10 9 20 10

5

用克鲁斯卡尔(Kruskal)方法构造最小生成树,并写出选边的次序。

五算法题(1,2小题各13分,3,4小题各12分,共50分)

1 设用二叉链表表示的二叉树不空,其根指针为root,结点形式为:

lchild data rchild

请写出将二叉树中所有结点的左,右子树相互交换的非递归算法。

2 利用两个栈S1和S2来模拟一个队列。若不存在栈溢出问题,则请写出用栈的操作来实现队列的插入和删除的算法。

3 设计一个算法,在长度为n的(小顶)堆R[1………n]中删除一个元素R[s](s<=n)产生一个长度为n-1的(小顶)堆,并将R[s]存放于R[n]中。

4 假设循环单链表不空,且无表头结点亦无表头指针,指针p指向链表中某结点。请设计一个算法,将p所指节点的前驱结点变为p所指结点的后继结点。

哈尔滨工程大学2001年数据结构考研试题

一填空(每空一分,共14分)

1 数据元素是数据结构的基本单位,数据项是数据的不可分割的最小单位。

2 深度是k的完全二叉树至少有2^(k-1)个结点,至多有2^k-1个结点。

3 哈希表的查找效率主要取决于造表时选取的哈希函数和处理冲突的方法。

4 对100个记录进行折半查找,最多比较7次,最少比较1次。

5 有n个顶点的无向图,最少有0条边,最多有n(n-1)/2条边。

6 AOE网中,从源点到汇点的最长路径上的活动叫做关键活动。有环的图不能进行拓扑排序。

7 对于堆排序,常用的建堆算法是筛选法,堆的形状是一棵完全二叉树。

二判断题(每小题1分,共5分)

1 线性表的链式存储结构优于顺序存储结构。错

2 链表的每个节点中都帢包含一个指针。错例如双向链表

3 栈和队列都是顺序存储结构的线性结构。错链栈

4 若数的度为2时,则该树为二叉树。错

5 若广义表中的每个元素都是原子,则广义表为线性表。对

三问答题(每小题4分,共16分)

1 一棵3阶4层(根为第一层,叶子为第四层)的B-树,至少有多少个关键字,至多有多少个关键字?

答:7个26个

2 利用栈秋表达式((A-B)-C)-(D-(E-F)) 的值,运算符栈和操作数栈各必须具有多少项?答:5项4项

3 以行序为主序存储10阶对称矩阵A,采用下三角的压缩存储方式,若起始地址是d,则A85的存储地址是多少?

答:32+d

4 设哈希表中以存在无个记录(如图一所示)。哈希函数为H(K)=K MOD 11,用二次探测再散列处理冲突。请问关键字为94的记录的存储地址是多少?

0 1 2 3 4 5 6 7 8 9 10

图一

45 16 39 62 76

答:存储地址是2

四综合题(每小题5分,共35分)

1 给定一组权值{9,6,14,17,2,15,3,16},请构造哈夫曼树,并计算其带权路径长度。答:带权路径长度186

2 已知二叉树的先序遍历的结果为ABCDEFGHIJ,中序遍历的结果为CBEDAHGIJF,请画出这颗二叉树。

3 对图二所示的无向图,(1)请用邻接表表示,且顶点链接按序号从小到大链接。

(2)请写出从V0出发的深度优先遍历和广度优先遍历的结果。

图二:

O

1 2

3 4 5 6

7

4 将图三所示的树转换为二叉树,并使其成为后序线索树。

图三: A

B C D

E F

G H I J

K L M

N

5 对关键字序列{44,12,53,13,37,88,24,61}构造一棵平衡二叉树。

6 已知一个OE网,如图四所示,求其关键路径,并给出时间4的最迟发生时间和事件5最早发生时间?

图四: 1 4 4

12

5 2

6 9

11 5 10

0 9

18

14 6

3 5

3 5

7 7 8

8

7 对序列{50,77,64,98,39,12,26,48,44,35}创建初始堆。

五(8分)设指针head 指向无表头结点单链表的首结点。试设一算法,删除链表中值为X 的结点,若X结点不存在,则输出“不存在”信息。

六(10分)已知一个有向图的邻接表,试编写一个算法求每个结点的出度和入度。

七(12分)已知一个二叉树存储于二叉链表中,其结点结构为lc data rc

其中lc和rc分别为指向左子树和右子树根的指针域。试编写一个

非递归算法,求二叉树的结点总数及其深度。

数据结构模拟题(开卷)

《数据结构》模拟题(补) 一.单项选择题 1.在线性表的下列存储结构中,读取元素花费时间最少的是【】。 A.单链表B.双链表C.顺序表D.循环链表 2.设计一个判定表达式中左、右括号是否配对出现的算法,采用【】数据结构最佳。 A.集合B.线性表C.队列D.栈 3.n个结点的线索二叉树上含有的线索数为【】。 A.2n B.n-1 C.n D.n+1 4.设广义表D=(a,(b,c)),则tail(D)=【】。 A.b,c B.(b,c) C.((b,c)) D.c 5.由4个结点可以构造出【】种不同的二叉树。 A.12 B.13 C.14 D.15 6.在栈中,出栈操作的时间复杂度为【】。 A.O(1) B.O(n) C.O(log2n) D.O(n2) 7.假设Q[0..len-1]表示循环队列,f为队头指针,r为队尾指针,则进队操作语句是【】。 A.f=f+1 B.r=r+1 C.f=(f+1)%len D.r=(r+1)%len 8.一个n*n的对称矩阵,如果以行或列为主序放入内存,则其容量为【】。 A.n*n B.n*n/2 C.n*(n+1)/2 D.(n+1)*(n+1)/2 9.队列操作的原则是【】。 A.进优于出B.出优于进C.先进先出D.后进先出 10.下列数据结构中,【】是非线性数据结构。 A.栈B.串C.队列D.树 11.两个指针p和q,分别指向单链表的两个元素,p所指元素是q所指元素的前驱,则【】。 A.p==q B.q->next=p C.p->next=q D.p->next=q->next 12.数组A中,每个元素的长度为4个字节,行下标i从1到5,列下标j从1到4,从首 地址SA开始连续存放在存储器内,该数组按行存放时,元素A[3][2]的起始地址为【】。 A.SA+20 B.SA+36 C.SA+40 D.SA+45 13.已知一个顺序存储的线性表,设每个结点需占m个存储单元,若第一个结点的地址为d1, 则第i个结点的地址为【】。 A.d1+(i-1)*m B.d1+i*m C.d1+(i+1)m D.d1-i*m 14.分析下列算法suanfa1(n)的时间复杂度是【】。 void suanfa1(int n) { int i,j,x=1; for(i=0;i

40875][东北大学]20年7月考试《数据结构Ⅱ》考核作业(答案)

东北大学继续教育学院 数据结构II 试卷(作业考核线上1) A 卷 学习中心:奥鹏远程教育沈阳学习中心(直属)[32]院校学号:C09024011930344 姓名何家强 (共 6 页) [ A]1.抽象数据类型的三个组成部分分别为 A.数据对象、数据关系和基本操作 B.数据元素、逻辑结构和存储结构 C.数据项、数据元素和数据类型 D.数据元素、数据结构和数据类型 [ B]2.要求相同逻辑结构的数据元素具有相同的特性,其含义为 A. 数据元素具有同一的特点 B. 不仅数据元素包含的数据项的个数相同,而且其对应数据项的类型要一致 C. 每个数据元素都一样 D. 仅需要数据元素包含的数据项的个数相同 [ D]3.下列各式中,按增长率由小至大的顺序正确排列的是 A.n,n!,2n ,n3/2 B.n3/2,2n,n logn,2100 C.2n,log n,n logn,n3/2 D.2100,logn, 2n, n n [B ]4. 在下列哪种情况下,线性表应当采用链表表示为宜 A.经常需要随机地存取元素 B.经常需要进行插入和删除操作 C.表中元素需要占据一片连续的存储空间 D.表中元素的个数不变 [ C]5.设指针p指向双链表的某一结点,则双链表结构的对称性是 A. p->prior->next=p->next->next; B. p->prior->prior=p->next->prior; C. p->prior->next=p-> next->prior; D. p->next->next= p->prior->prior;

[D ]6. 已知指针p和q分别指向某带头结点的单链表中第一个结点和最后一个结点。假设指 针s指向另一个单链表中某个结点,则在s所指结点之后插入上述链表应执行的语句为 A. s->next=q;p->next=s->next; B. s->next=p;q->next=s->next; C. p->next=s->next;s->next=q; D. q->next=s->next;s->next=p; [A ]7. 栈和队列的共同特点是 A.只允许在端点处插入和删除元素 B.都是先进后出 C.都是先进先出 D.没有共同点 [D ]8. 对于链队列,在进行插入运算时. A. 仅修改头指针 B. 头、尾指针都要修改 C. 仅修改尾指针 D.头、尾指针可能都要修改 [B ]9.设有一个顺序栈的入栈序列是1、2、3,则3个元素都出栈的不同排列个数为 A.4 B.5 C. 6 D. 7 [D ]10.设一个栈的输入序列为A,B,C,D,则借助一个栈所得到的输出序列不可能是 A.A,B,C,D B.D,C,B,A C. A,C,D,B D. D,A,B,C [ C]11.表达式a*(b+c)-d的后缀表达式是 A.abcd*+- B.abc*+d- C.abc+*d- D.-+*abcd [B ]12.某二叉树的先序序列和后序序列正好相反,则该二叉树的特点一定是 A. 空或只有一个结点 B.高度等于其结点数 C. 任一结点无左孩子 D.任一结点无右孩子 [ B]13.下面的说法中正确的是 (1)任何一棵二叉树的叶子结点在种遍历中的相对次序不变。 (2)按二叉树定义,具有三个结点的二叉树共有6种。 A.(1),(2) B.(1) C.(2) D.(1),(2)都错 [ B]14.树有先序遍历和后序遍历,树可以转化为对应的二叉树。下面的 说法正确的是 A.树的后序遍历与其对应的二叉树的先序遍历相同 B.树的后序遍历与其对应的二叉树的中序遍历相同 C.树的先序序遍历与其对应的二叉树的中序遍历相同 D.以上都不对 [D ]15.下列说法正确的是 (1)二又树按某种方式线索化后,任一结点均有前趋和后继的线索 (2)二叉树的先序遍历序列中,任意一个结点均处于其子孙结点前 (3)二叉排序树中任一结点的值大于其左孩子的值,小于右孩子的值 A.(1)(2)(3) B.(1)(2) C.(1)(3) D.都不对 [D ]16. 二叉树的第k层的结点数最多为 A.2k-1 B.2K+1

数据结构试题库答案

数据结构试题及答案 一、单项选择题 (1)一个算法应该就是()。 A)程序???B)问题求解步骤得描述 C)要满足五个基本属性??D) A与C (2)算法指得就是()。 A)计算机程序???B)解决问题得计算方法 C)排序算法???D)解决问题得有限运算序列。 (3)与数据元素本身得形式、内容、相对位置、个数无关得就是数据得()。 A) 存储结构B) 逻辑结构C)算法D)操作 (4)从逻辑上可以把数据结构分为( )两大类。 A)动态结构、静态结构??B) 顺序结构、链式结构 C)线性结构、非线性结构???D)初等结构、构造型结构 (5)下列叙述中正确得就是()。 A)一个逻辑数据结构只能有一种存储结构 B)数据得逻辑结构属于线性结构,存储结构属于非线性结构 C)一个逻辑数据结构可以有多种存储结构,且各种存储结构不影响数据处理得效率 D)一个逻辑数据结构可以有多种存储结构,且各种存储结构影响数据处理得效率 (6)数据得基本单位就是() ?A) 数据项??B) 数据类型C)数据元素??D)数据变量 (7)下列程序得时间复杂度为() i=0;s=0; while(s

数据结构模拟试题及答案

数据结构模拟试题一 一、判断题(每小题1 分,共15分) 1.计算机程序处理的对象可分为数据和非数据两大类。 2.全体自然数按大小关系排成的序列是一个线性表。 3.在描述单向链表的结点类型时,必须首先描述数值字段,然后再描述指针字段。 4.顺序栈是一种规定了存储方法的栈。 5.树形结构中的每个结点都有一个前驱。 6.在任何一棵完全二叉树中,最多只有一个度为1的分支结点。 7.若某顶点是有向图的根,则该顶点的入度一定是零。 8.如果某图的邻接矩阵有全零的行,没有全零的列,则该图一定是有向图。 9.用一维数组表示矩阵可以节省存储空间。 10.广义表的长度与广义表中含有多少个原子元素有关。 11.分块查找的效率与线性表被分成多少块有关。 12.散列表的负载因子等于存入散列表中的结点个数。 13.在起泡排序过程中,某些元素可能会向相反的方向移动。 14.按某种逻辑关系组织起来的记录的集合称为逻辑记录。 15.索引非顺序文件的特点是索引表中的索引项不一定按关键字大小有序排列。 二、填空题(每空1分,共15分) 1.顺序表是一种_____________线性表。 2.若用Q[1]~Q[m]作为非循环顺序队列的存储空间,则对该队列最多只能执行___次插入操作。 3.栈和队列的区别在于________的不同。 4.在高度为h(h≥0)的二叉树中至少有___个结点,至多有___个结点。 5.若用二叉链表来存储具有m个叶子,n个分支结点的树,则二叉链表中有___个左指针域为空的结点,有___个右指针域 为空的结点。 6.n个顶点的有根有向图中至少有___条边,至多有___条边。 7.10行20列矩阵若用行优先顺序表来表示,则矩阵中第8行第7列元素是顺序表中第___个元素。 8.在各元素查找概率相等的情况下,用顺序查找方法从含有12个元素的有序表中查找一个元素,元素间的平均比较次数是 _____。 9.在归并两个长度为m的有序表时,排序码的比较次数至少是___次,至多是___次。 10.在高度为3的6阶B-树中,至少有___个关键字,至多有___个关键字。 三、选择题(每题2分,共30分) 1.计算机所处理的数据一般具有某种内在联系性,这是指________。 A.元素和元素之间存在某种关系B.数据和数据之间存在某种关系 C.元素内部具有某种结构D.数据项和数据项之间存在某种关系 2. 假设顺序表目前有4个元素,第i个元素放在R[i]中,1≤i≤4 。若把新插入元素存入R[6],则________。 A.会产生运行错误B.R[1]~R[6]不构成一个顺序表 C.顺序表的长度大于顺序表元素个数,会降低存储空间利用率 D.顺序表元素序号和数组元素下标不一致,会给使用带来麻烦 3. 设H是不带表头结点循环单向链表的表头指针,P是和H同类型的变量。当P指向链表最后一个结点时,_________。A.P所指结点指针字段的值为空B.P的值与H的值相等 C.P所指结点的地址与H的值相等D.P所指结点指针字段的值与H的值相等 4. 栈的定义不涉及数据的__________。 A.逻辑结构B.存储结构C.运算D.逻辑结构和存储结构 5. 设5个元素进栈的顺序是1,2,3,4,5,则出栈的顺序有可能是___________。 A.2,4,1,3,5 B.3,4,1,5,2 C.3,2,4,1,5 D.4,1,3,2,5 6. 若某棵二叉树结点的前序序列和中序序列相同,则该二叉树_________。 A.只有一个结点B.每个结点都没有左孩子C.每个结点都没有右孩子D.不存在 7.对于一棵具有n个结点,度为3的树来说,____________。 A.树的高度至多是n-3 B.树的高度至多是n-2 C.树的最低高度是┏log3(n+1)┓ D.至少在某一层上正好有3个结点 8.n个顶点的有向图如果可以进行拓扑排序,则可以断定该有向图__________。 A.含n个强连通分量B.有唯一的入度为0的顶点C.有多个出度为0的顶点 D.是一个有根有向图 9. 特殊矩阵用行优先顺序表表示,_____________ A.简化了矩阵元素之间的逻辑关系B.便于按行处理矩阵元素

东北大学2000年数据结构试题

1 (20分)简要回答下列问题 (注意:请将答案写在答题纸上,并注明题号) ①(3分) 内存中一片连续空间(不妨假设地址从1到m),提供给两个栈S1和S2使用,怎样分配这部分存储空间,使得对任一个栈,仅当这部分空间全满时才发生上溢。 ②(5分) 假设字符a,b,c,d,e,f的使用频度分别是0.07,0.09,0.12,0.22,0.23,0.27,写出a,b,c,d,e,f的Huffman(哈夫曼)编码。 ③(4分) 一棵共有n个结点的树,其中所有分枝结点的度均为k,求该树中叶子结点的子数。 ④(4分) 图1表示一个地区的通讯网,边表示城市间的通讯线路,边上的权表示架设线路花费的代价,如何选择能沟通每个城市且总代价最省的n-1条线路,画出所有可能的选择。 ⑤(4分) 在起泡(汽泡)排序过程中,有的关键字在某趟排序中可能朝着与最终排序相反的方向移动,试举例说明之。快速排序过程中有没有这种现象? 2 (15分)

设有一个由正整数组成的无序(向后)单链表,编写完成下列功能的算法: ①找出最小值结点,且打印该数值; ②若该数值是奇数,则将其与直接后继结点的数值交换; ③若该数值是偶数,则将其直接后继结点删除; 3 (14分) 解答下列问题: ①(4分) 将算术表达式((a+b)+c*(d+e)+f)*(g+h) 转化为二叉树; ②(10分) 假设一个仅包含二元运算符的算术表达式以二叉链表形式存储在二叉树BT中,写出计算该算术表达式值的算法。 4(21) 解答下列问题: ①(5分) 画出有向图的十字链表存储结构中头结点和表结点的结点结构。 ②(4分) 下面哪一个方法可以判断出一个有向图中是否有环(回路)? (1)深度优先遍历 (2)拓朴排序(3)求最短路径(4)求关键路径 ③(12分)

《数据结构》题库及答案

《数据结构》题库及答案 一、选择题 1.线性表的顺序存储结构是一种 的存储结构,线性表的链式存储结构是一种 的存储结构。 a. 随机存储; b.顺序存储; c. 索引存取; d. HASH 存取 2.一个栈的入栈序列是a,b,c,d,e ,则栈的不可能的输出序列是 。 a. edcba; b. decba; c. dceab; d.abcde 3.一个队列的入队序列是1,2,3,4,则队列的输出序列是 。 a. 4,3,2,1; b. 1,2,3,4; c. 1,4,3,2; d.3,2,4,1 4.在一个单链表中,已知p 结点是q 结点的直接前驱结点,若在p 和q 之间插入结点s ,则执行的操作是 。 a. s->nxet=p->next; p->next=s; b. p->next=s->next; s->next=p; c. q->next=s; s->next=p; d. p->next=s; s->next=q; 5.设有两个串p,q ,求q 在p 中首次出现的位置的运算称作 。 a.联接 b.模式匹配 c.求子串 d.求串长 6.二维数组M 的成员是6个字符(每个字符占一个存储单元)组成的串,行下标i 的范围从0到8,列下标j 的范围从1到10,则存放M 至少需要 个字节。 a. 90 b.180 c.240 d.540 7.在线索二叉树中,结点p 没有左子树的充要条件是 。 a. p->lch==NULL b. p->ltag==1 c. p->ltag==1且p->lch=NULL d. 以上都不对 8.在栈操作中,输入序列为(A ,B ,C ,D ),不可能得到的输出序列为:______ A 、(A , B , C , D ) B 、(D ,C ,B ,A ) C 、(A ,C ,D ,B ) D 、(C ,A ,B ,D ) 9.已知某二叉树的后序序列是dabec ,中序序列是debac ,则它的先序序列是 。 A 、acbed B 、decab C 、deabc D 、cedba 10.设矩阵A 是一个对称矩阵,为了节省存储空间,将其下三角部分(见下图)按行序存放在一维数组B[1..n(n-1)/2]中,对任一上三角部分元素)(j i a ij ,在一维数组B 的存放位置是 。

2017年数据结构期末考试题及答案A

2017年数据结构期末考试题及答案 一、选择题(共计50分,每题2分,共25题) 1 ?在数据结构中,从逻辑上可以把数据结构分为 C 。 A. 动态结构和静态结构B?紧凑结构和非紧凑结构 C.线性结构和非线性结构 D .内部结构和外部结构 2?数据结构在计算机内存中的表示是指 A ° A. 数据的存储结构 B.数据结构 C.数据的逻辑结构 D .数据元 素之间的关系 3.在数据结构中,与所使用的计算机无关的是数据的 A 结构。 A. 逻辑B?存储 C.逻辑和存储 D.物理 4 .在存储数据时,通常不仅要存储各数据元素的值,而且还要存储 C ° A.数据的处理方法B?数据元素的类型 C.数据元素之间的关系 D.数据的存储方法 5. 在决定选取何种存储结构时,一般不考虑 A ° A.各结点的值如何B?结点个数的多少 C?对数据有哪些运算 D.所用的编程语言实现这种结构是否方便。 6. 以下说法正确的是D ° A. 数据项是数据的基本单位 B. 数据元素是数据的最小单位 C. 数据结构是带结构的数据项的集合 D. —些表面上很不相同的数据可以有相同的逻辑结构 7. 在以下的叙述中,正确的是B ° A. 线性表的顺序存储结构优于链表存储结构 B. 二维数组是其数据元素为线性表的线性表 C?栈的操作方式是先进先出 D.队列的操作方式是先进后出

8. 通常要求同一逻辑结构中的所有数据元素具有相同的特性,这意味着 A. 数据元素具有同一特点 B. 不仅数据元素所包含的数据项的个数要相同,而且对应的数据项的类型要一致 C. 每个数据元素都一样 D. 数据元素所包含的数据项的个数要相等 9 ?链表不具备的特点是 A 。 A.可随机访问任一结点 B.插入删除不需要移动元素 C?不必事先估计存储空间 D.所需空间与其长度成正比 10. 若某表最常用的操作是在最后一个结点之后插入一个结点或删除最后一 个结点,则采用 D 存储方式最节省运算时间。 A.单链表B ?给出表头指针的单循环链表 C.双链表D ?带头结点 的双循环链表 11. 需要分配较大空间,插入和删除不需要移动元素的线性表,其存储结构是 B 。 A.单链表B .静态链表 C.线性链表 D .顺序存储结构 12 .非空的循环单链表head的尾结点(由p所指向)满足C 。 A. p—>next 一NULL B. p — NULL C. p—>next == head D. p = = head 13 .在循环双链表的p所指的结点之前插入s所指结点的操作是 D 。 A .p—> prior-> prior=s B .p—> prior-> n ext=s C.s —> prior—> n ext = s D.s —> prior—> prior = s 14 .栈和队列的共同点是C 。 A.都是先进后出 B .都是先进先出 C.只允许在端点处插入和删除元素 D .没有共同点

《数据结构C》模拟试题

山东科技大学继续教育学院 《数据结构C》模拟试题一 班级姓名学号 一、选择题(20分) 1. 组成数据的基本单位是( )。 (A) 数据项(B)数据类型(C)数据元素(D)数据变量 2. 线性表的链接实现有利于( )运算。 (A) 插入(B)读表元(C)查找(D)定位 3. 串的逻辑结构与( )的逻辑结构不同。 (A) 线性表(B)栈(C)队列(D)树 4. 二叉树第i(i≥1)层最多有( )个结点。 (A) 2i(B)2i (C) 2i-1(D) 2i-1 5. 设单链表中p指向结点A,若要删除A后结点(若存在),则需要修改p的操作为( ) (A) p.Next = p.Next.Next (B)p=p.Next (C)p=p.Next.Next (D)p.Next=p 6. 设一数列的输入顺序为1,2,3,4,5,6,通过栈操作不可能排成的输出序列为( ) (A) 3,2,5,6,4,1 (B) 1,5,4,6,2,3 (C) 2,4,3,5,1,6 (D) 4,5,3,6,2,1 7. 设字符串S1=’ABCDEFG’,S2=’PQRST’,则运算S=CONCAT(SUB(S1,2,LENGTH(S2)),SUB(S1,LENGTH(S2),2))的结果为( ) (A) ‘BCQR’ (B) ‘BCDEF’ (C) ’BCDEFG’ (D) ‘BCDEFEF’ 8. 有一个10阶的对称矩阵A,采用压缩存储方式,以行序为主存储,a11为第一元素,其存储地址为1,每个元素占1个地址空间,则a85地址为( ) (A)13 (B) 33 (C) 18 (D) 40 9. 如果结点A有3个兄弟,而且B为A的双亲,则B的度为( ) (A) 3 (B) 4 (C) 5 (D) 1 10. 线索化二叉树中某结点D没有左孩子的必要条件是( ) (A) D.Lchild=null (B) D.ltag=1 (C) D.Rchild=null (D) D.ltag=0 二、填空题(20分) 1. 对于一个以顺序实现的循环队列Q[0..m_1],队头、队尾指针分别为f,r,其判空的条件是 ,判满的条件是。 2. 循环链表的主要优点是。 3. 给定一个整数集合{3,5,6,9,12},画出其对应的一棵Huffman树。 4 双向循环链表中,在p所指的结点之后插入f所指的结点,其操作为。 5. 下列为朴素的模式匹配算法,请在算法的处填入正确的子句。

数据结构试题及答案(10套最新)

单选题(每题2分,共20分) 1. 1. 对一个算法的评价,不包括如下(B )方面的内容。 A .健壮性和可读性 B .并行性 C .正确性 D .时空复杂度 2.2. 在带有头结点的单链表HL 中,要向表头插入一个由指针 p 指向 的结点,则执行(A )。 A. p->next=HL->next; HL->next=p; B. p->next=HL; HL=p; 都具有相同的(A )。 A.行号 B .列号 C .元素值 D .非零元素个数 9. 快速排序在最坏情况下的时间复杂度为(D )。 A. O(log 2n) B . O(nlog 2n) C . 0(n) D 10.10. 从二叉搜索树中查找一个元素时,其时间复杂度大致 为 A. O(n) B. O(1) C. O(log 2 n) D. O(n 二、 运算题(每题6分,共24分) 1. 1. 数据结构是指数据及其相互之间的 _________________ 。当结点之 间存在M 对N (M N)的联系时,称这种结构为 __________________________ 。 2. 2. 队列的插入操作是在队列的_ _尾 ________ 行,删除操作是在队 列的 ____ 首 _____ 行。 3. 3. 当用长度为N 的数组顺序存储一个栈时,假定用top==N 表示栈 C. p->next=HL; p=HL; 3. 3. A. C. D. HL=p; p-> next=HL; 对线性表,在下列哪种情况下应当采用链表表示? 经常需要随机地存取元素 B. 表中元素需要占据一片连续的存储空间 一个栈的输入序列为1 2 3, 4. 4. 列的是(C ) A. 2 3 1 C. 3 1 2 AOV 网 是一种(D ) 有向 图 B .无向图 (B ) 经常需要进行插入和删除操作 D.表中元素的个数不变 则下列序列中不可能是栈的输出序 B. 3 2 1 5. 5. 6. .无向无环图 D .有向无环图 采用 开放定址法处理散列表的冲突时,其平均查找长度( B. 高于链接法处理冲突 D .高于二分查找 7. 8. 6. A.低于链接法处理冲突 .与链接法处理冲突相同 7. 参数。 A.值 8. B)。 若需要利用形参直接访问实参时,应将形参变量说明为( B .函数 C .指针 D .引用 在稀疏矩阵的带行指针向量的链接存储中,每个单链表中的结点 9. .0(n 2) (C )。 2 )

《数据结构》模拟试卷一及答案

模拟试卷一 一、单选题(每题 2 分,共20分) 1.以下数据结构中哪一个是线性结构?( ) A. 有向图 B. 队列 C. 线索二叉树 D. B树 2.在一个单链表HL中,若要在当前由指针p指向的结点后面插入一个由q指向的结点, 则执行如下( )语句序列。 A. p=q; p->next=q; B. p->next=q; q->next=p; C. p->next=q->next; p=q; D. q->next=p->next; p->next=q; 3.以下哪一个不是队列的基本运算?() A. 在队列第i个元素之后插入一个元素 B. 从队头删除一个元素 C. 判断一个队列是否为空 D.读取队头元素的值 4.字符A、B、C依次进入一个栈,按出栈的先后顺序组成不同的字符串,至多可以组成 ( )个不同的字符串? A.14 B.5 C.6 D.8 5.由权值分别为3,8,6,2的叶子生成一棵哈夫曼树,它的带权路径长度为( )。 A. 11 B.35 C. 19 D. 53 图一 6.该二叉树结点的前序遍历的序列为( )。 A.E、G、F、A、C、D、B B. E、A、G、C、F、B、D C. E、A、C、B、D、G、F D. E、G、A、C、D、F、B 7.该二叉树结点的中序遍历的序列为( )。 A. A、B、C、D、E、G、F B. E、A、G、C、F、B、D C. E、A、C、B、D、G、F D. B、D、C、A、F、G、E 8.该二叉树的按层遍历的序列为( )。 A.E、G、F、A、C、D、B B. E、A、C、B、D、G、F C. E、A、G、C、F、B、D D. E、G、A、C、D、F、B 9.下面关于图的存储的叙述中正确的是( )。 A.用邻接表法存储图,占用的存储空间大小只与图中边数有关,而与结点个数无关B.用邻接表法存储图,占用的存储空间大小与图中边数和结点个数都有关 C. 用邻接矩阵法存储图,占用的存储空间大小与图中结点个数和边数都有关 D.用邻接矩阵法存储图,占用的存储空间大小只与图中边数有关,而与结点个数无关10.设有关键码序列(q,g,m,z,a,n,p,x,h),下面哪一个序列是从上述序列出发建 堆的结果?( )

算法与数据结构题库与答案

一、单项选择题 1 某算法的时间复杂度是O(n 2 ) ,表明该算法()。 A 问题规模是n2 B 问题规模与n2成正比 C 执行时间等于n2 D 执行时间与n2成正比 2、关于数据结构的描述,不正确的是()。 A数据结构相同,对应的存储结构也相同。 B数据结构涉及数据的逻辑结构、存储结构和施加其上的操作等三个方面。 C数据结构操作的实现与存储结构有关。 D定义逻辑结构时可不考虑存储结构。 3、按排序策略分来,起泡排序属于()。 A插入排序B选择排序C交换排序D归并排序 4、利用双向链表作线性表的存储结构的优点是()。 A便于进行插入和删除的操作 B 提高按关系查找数据元素的速度 C节省空间D便于销毁结构释放空间 5、一个队列的进队顺序为1,2,3,4,则该队列可能的输出序列是()。 A 1,2,3,4 B 1,3,2,4 C 1,4,2,3 D 4,3,2,1 6、 Dijkstra算法是按()方法求出图中从某顶点到其余顶点最短路径的。 A按长度递减的顺序求出图的某顶点到其余顶点的最短路径 B按长度递增的顺序求出图的某顶点到其余顶点的最短路径 C通过深度优先遍历求出图中从某顶点到其余顶点的所有路径 D通过广度优先遍历求出图的某顶点到其余顶点的最短路径 7、字符串可定义为n( n≥ 0)个字符的有限()。其中,n是字符串的长度,表明字符串中字符的个数。 A集合B数列C序列D聚合 8、在二维数组A[9][10]中,每个数组元素占用 3 个存储单元,从首地址SA 开始按行连续存放。在这种情况下,元素A[8][5]的起始地址为()。 A SA+141 B SA+144 C SA+222 D SA+255 9、已知广义表为L(A(u,v,(x,y),z),C(m,(),(k,l,n),(())),((())),(e,(f,g),h)),则它的长度是()。 A2B3C4D5 10.对于具有n(n>1)个顶点的强连通图,其有向边条数至少有_____。 A. n+1 B. n C. n-1 D. n-2 11.一个递归算法必须包括 __________ 。 A. 递归部分 B . 结束条件和递归部分 C. 迭代部分 D. 结束条件和迭代部分 12.从逻辑上看可以把数据结构分为__________两大类。 A.动态结构、静态结构B.顺序结构、链式结构 C.线性结构、非线性结构D.初等结构、构造型结构 13、若在长度为n 的顺序表的表尾插入一个新元素的渐进时间复杂度为()。 A O(n) B O(1) C O(n 2) D O(log 2n) 14.采用顺序搜素方式搜索长度为 n 的线性表时,在等概率情况下,搜索成功时的平均搜索 长度为 __________。 A. n B. n/2 C . (n+1)/2 D. (n-1)/2 15、非空的循环单链表first的链尾结点(由p 所指向)满足()。 A p->link==NULL; B P==NULL;

数据结构复习资料,java数据结构期末考试

第二章算法分析 1.算法分析是计算机科学的基础 2.增长函数表示问题(n)大小与我们希望最优化的值之间的关系。该函数表示了该算法的时间复杂度或空间复杂度。增长函数表示与该问题大小相对应的时间或空间的使用 3.渐进复杂度:随着n的增加时增长函数的一般性质,这一特性基于该表达式的主项,即n 增加时表达式中增长最快的那一项。 4.渐进复杂度称为算法的阶次,算法的阶次是忽略该算法的增长函数中的常量和其他次要项,只保留主项而得出来的。算法的阶次为增长函数提供了一个上界。 5.渐进复杂度:增长函数的界限,由增长函数的主项确定的。渐进复杂度类似的函数,归为相同类型的函数。 6.只有可运行的语句才会增加时间复杂度。 7. O() 或者大O记法:与问题大小无关、执行时间恒定的增长函数称为具有O(1)的复杂度。 增长函数阶次 t(n)=17 O(1) t(n)=3log n O(log n) t(n)=20n-4 O(n) t(n)=12n log n + 100n O(n log n) t(n)=3n2+ 5n - 2 O(n2) t(n)=8n3+ 3n2O(n3) t(n)=2n+ 18n2+3n O(2n) 8.所有具有相同阶次的算法,从运行效率的角度来说都是等价的。 9.如果算法的运行效率低,从长远来说,使用更快的处理器也无济于事。 10.要分析循环运行,首先要确定该循环体的阶次n,然后用该循环要运行的次数乘以它。(n 表示的是问题的大小) 11.分析嵌套循环的复杂度时,必须将内层和外层循环都考虑进来。 12.方法调用的复杂度分析: 如:public void printsum(int count){ int sum = 0 ; for (int I = 1 ; I < count ; I++) sum += I ; System.out.println(sun); } printsum方法的复杂度为O(n),计算调用该方法的初始循环的时间复杂度,只需把printsum方法的复杂度乘以该循环运行的次数即可。所以调用上面实现的printsum方法的复 杂度为O(n2)。 13指数函数增长> 幂函数增长> 对数函数增长

数据结构模拟试卷(含答案)

数据结构设计课程代码:7399 一、单项选择题(在每小题列出的四个选项中只有一个选项是符合题目要求的,请将正确选项前的字母填在题后的括号内。每小题2分,共40分) 1、串的长度是()。 A、串中不同字母的个数 B、串中不同字符的个数 C、串中所含字符的个数,且大于0 D、串中所含字符的个数 2、若用数组S[1..n]作为两个栈S1和S2的共同存储结构,对任何一个栈,只有当S全满时才不能作入栈操作。为这两个栈分配空间的最佳方案是()。 A、S1的栈底位置为0,S2的栈底位置为n+1 B、S1的栈底位置为0,S2的栈底位置为n/2 C、S1的栈底位置为1,S2的栈底位置为n D、S1的栈底位置为1,S2的栈底位置为n/2 3、队列操作的原则是()。 A、先进先出 B、后进先出 C、只能进行插入 D、只能进行删除 4、有64个结点的完全二叉树的深度为()(根的层次为1)。 A、8 B、7 C、6 D、5 5、在有n个结点的二叉链表中,值为非空的链域的个数为()。

A、n-1 B、2n-1 C、n+1 D、2n+1 6、带权有向图G用邻接矩阵A存储,则顶点i的人度等于A中()。 A、第i行非∞的元素之和 B、第i列非∞的元素之和 C、第i行非∞且非0的元素个数 D、第i列非∞且非0的元素个数 7、在有n个结点且为完全二叉树的二叉排序树中查找一个键值,其平均比较次数的数量级为()。 A、0(n) B、0(log2n) C、0(nolg2n) D、0(n2) 8、若表R在排序前已按键值递增顺序排列,则()算法的比较次数最少。 A、直接插入排序 B、快速排序 C、归并排序 D、选择排序 9、下列排序算法中,()排序在某趟结束后不一定选出一个元素放到其最终的位置上。 A、选择 B、冒泡 C、归并 D、堆

东北大学数据结构实验报告

实验报告 课程名称:数据结构班级:实验成绩: 实验名称:顺序表和链表的应用学号:批阅教师签字: 实验编号:实验一:实验日期:2017-11-25 指导教师:组号:实验时间:18:30~22:30 一、实验目的 (1)掌握线性表的基本操作(插入、删除、查找)以及线性表合并等运算在顺序存储结构、链式存储结构上的实现。重点掌握链式存储结构实现的各种操作。 (2)掌握线性表的链式存储结构的应用。 二、实验容与实验步骤 (1)实验容: 实现约瑟夫环,约瑟夫环(Joseph)问题的一种描述是:编号为1、2、3……n的n个人按照顺时针方向围坐一圈,每人持有一个密码(正整数)。一开始任选一个正整数作为报数的上限值m,从第一个人开始按照顺时针的方向自1开始顺序报数,报到m时停止报数。报m的人出列,将他的密码作为新的m值,从他的顺时针方向上的下一个人开始重新从1报数,如此下去,直至所有人全部出列为止。设计一个程序求出出列顺序。 (2)抽象数据类型和设计的函数描述,说明解决设想。 首先定义一个链表,用其中的data项存储每个人的编号,用password项存储每个人所持有的密码,并且声明一个指针。之后使用CreatList_CL函数来创建一个循环链表,在其中的data和password中存入编号和密码,最后使最后一个节点的next指向L,使其能够形成循环队列。定义了函数Display来显示链表当中的容,以确定存储的数据没有错误。定义了函数Delete_L来实现约瑟夫环中依次删除的功能,依次比较,如果某个人所持的密码和m 值相等,则删除这个结点,并且输出此时该结点的编号和密码,实现出列的功能。 (3)简短明确地写出实验所采用的存储结构,并加以说明。 该实验我主要采用的是线性表的链式存储结构,首先定义了链表的结构,其中包括data 项和password项,分别存储每个人的编号和所持密码,还声明了指向下一个结点的指针,该指针可以连接各个结点,并且将最后一个结点的指针指向第一个结点使之成为一个循环链表。 三、实验环境 操作系统:Windows 7 调试软件名称:Visio Studio2017 上机地点:信息楼B405 四、实验过程与分析 (1)主要的函数或操作部的主要算法,分析这个算法的时、空复杂度,并说明设计的巧妙之处。

《数据结构》期末考试题及答案

2011-2012学年第一学期期末考查 《数据结构》试卷 (答案一律写在答题纸上,在本试卷上做答无效) 一、选择(每题1分,共10分) 1.长度为n的线性表采用顺序存储结构,一个在其第i个位置插入新元素的算法时间复杂度为(D) A.O(0) B.O(1) C.O(n) D.O(n2) 2.六个元素按照6,5,4,3,2,1的顺序入栈,下列哪一个是合法的出栈序列?(D) A.543612 B.453126 C.346512 D.234156 3.设树的度为4,其中度为1、2、3、4的结点个数分别是4、2、1、2,则树中叶子个数为(B ) A.8 B.9 C.10 D.11 4.设森林F对应的二叉树B有m个结点,B的右子树结点个数为n,森林F中第一棵树的结点个数是( B ) A. m-n B.m-n-1 C.n+1 D.m+n 5.若一棵二叉树具有10个度为2的结点,5个度为1的结点,则度为0的结点个数是(B) A.9 B.11 C.15 D.不确定 6.下列哪一个方法可以判断出一个有向图是否有环。(A) A.深度优先遍历 B.拓扑排序 C.求最短路径 D.求关键路径 7.第7层有10个叶子结点的完全二叉树不可能有(B )个结点。 A.73 B.234 C.235 D.236 8.分别用以下序列构造二叉排序树,与用其他三个序列构造的结果不同的是(B) A.(100,80,90,60,120,110,130) B.(100, 120, 110,130,80, 60,90) C.(100,60,80,90,120,110,130) D.(100,80, 60,90, 120, 130,110) 9.对一组数据(84,47,25,15,21)排序,数据的排列次序在排序过程中变化如下:(1)84 47 25 15 21 (2)15 47 25 84 21 (3)15 21 25 84 47(4)15 21 25 47 84则采用的排序方法是(B ) A.选择排序 B.起泡排序 C.快速排序 D.插入排序 10.对线性表进行折半查找时,要求线性表必须(D) A.以顺序方式存储 B.以顺序方式存储,且数据元素有序

数据结构期末模拟试题05(有答案)

课程测试试题(卷) ----------------------以下为教师填写-------------------- I、命题院(部):数学与计算机科学学院 II、课程名称:数据结构 III、测试学期:20 -20 学年度第学期 IV、测试对象:学院专业级班 V、问卷页数(A4):页 VI、答卷页数(A4):页 VII、考试方式:闭卷(开卷、闭卷或课程小论文,请填写清楚) VIII、问卷内容:(请老师在出题时安排紧凑,填空题象征性的留出一点空格,学生将所有的答案做在答题纸上的规定位置,并写清楚大题、小题的题号) 一、单选题(每题 2 分,共20分) 1.以下数据结构中哪一个是线性结构?( ) A. 有向图 B. 队列 C. 线索二叉树 D. B树 2.在一个单链表HL中,若要在当前由指针p指向的结点后面插入一个由q指 向的结点,则执行如下( )语句序列。 A. p=q; p->next=q; B. p->next=q; q->next=p; C. p->next=q->next; p=q; D. q->next=p->next; p->next=q; 3.以下哪一个不是队列的基本运算?() A. 在队列第i个元素之后插入一个元素 B. 从队头删除一个元素 C. 判断一个队列是否为空 D.读取队头元素的值 4.字符A、B、C依次进入一个栈,按出栈的先后顺序组成不同的字符串,至多 可以组成( )个不同的字符串? A.14 B.5 C.6 D.8 5.由权值分别为3,8,6,2的叶子生成一棵哈夫曼树,它的带权路径长度为 ( )。

以下6-8题基于图1。 6.该二叉树结点的前序遍历的序列为( )。 A.E、G、F、A、C、D、B B.E、A、G、C、F、B、D C.E、A、C、B、D、G、F D.E、G、A、C、D、F、B 7.该二叉树结点的中序遍历的序列为( )。 A. A、B、C、D、E、G、F B. E、A、G、C、F、B、D C. E、A、C、B、D、G、F E.B、D、C、A、F、G、E 8.该二叉树的按层遍历的序列为( )。 A.E、G、F、A、C、D、B B. E、A、C、B、D、G、F C. E、A、G、C、F、B、D D. E、G、A、C、D、F、B 9.下面关于图的存储的叙述中正确的是( )。 A.用邻接表法存储图,占用的存储空间大小只与图中边数有关,而与结点个数无关 B.用邻接表法存储图,占用的存储空间大小与图中边数和结点个数都有关 C. 用邻接矩阵法存储图,占用的存储空间大小与图中结点个数和边数都有关 D.用邻接矩阵法存储图,占用的存储空间大小只与图中边数有关,而与结点个数无关 10.设有关键码序列(q,g,m,z,a,n,p,x,h),下面哪一个序列是从上述 序列出发建堆的结果?( ) A. a,g,h,m,n,p,q,x,z B. a,g,m,h,q,n,p,x,z C. g,m,q,a,n,p,x,h,z D. h,g,m,p,a,n,q,x,z 二、填空题(每空1分,共26分) 1.数据的物理结构被分为_________、________、__________和___________四 种。 2.对于一个长度为n的顺序存储的线性表,在表头插入元素的时间复杂度为 _________,在表尾插入元素的时间复杂度为____________。 3.向一个由HS指向的链栈中插入一个结点时p时,需要执行的操作是 ________________;删除一个结点时,需要执行的操作是 ______________________________(假设栈不空而且无需回收被删除结点)。

数据结构试题及答案(10套最新)

一、单选题(每题 2 分,共20分) 1. 1.对一个算法的评价,不包括如下(B )方面的内容。 A.健壮性和可读性B.并行性C.正确性D.时空复杂度 2. 2.在带有头结点的单链表HL中,要向表头插入一个由指针p指向的结 点,则执行(A )。 A. p->next=HL->next; HL->next=p; B. p->next=HL; HL=p; C. p->next=HL; p=HL; D. HL=p; p->next=HL; 3. 3.对线性表,在下列哪种情况下应当采用链表表示?( B ) A.经常需要随机地存取元素 B.经常需要进行插入和删除操作 C.表中元素需要占据一片连续的存储空间 D.表中元素的个数不变 4. 4.一个栈的输入序列为1 2 3,则下列序列中不可能是栈的输出序列的是 ( C ) A. 2 3 1 B. 3 2 1 C. 3 1 2 D. 1 2 3 5. 5.AOV网是一种(D )。 A.有向图B.无向图C.无向无环图D.有向无环图 6. 6.采用开放定址法处理散列表的冲突时,其平均查找长度(B)。 A.低于链接法处理冲突 B. 高于链接法处理冲突 C.与链接法处理冲突相同D.高于二分查找 7.7.若需要利用形参直接访问实参时,应将形参变量说明为(D )参数。 A.值B.函数C.指针D.引用 8.8.在稀疏矩阵的带行指针向量的链接存储中,每个单链表中的结点都具 有相同的( A )。 A.行号B.列号C.元素值D.非零元素个数 9.9.快速排序在最坏情况下的时间复杂度为(D )。 A.O(log2n) B.O(nlog2n) C.0(n) D.0(n2) 10.10.从二叉搜索树中查找一个元素时,其时间复杂度大致为( C )。 A. O(n) B. O(1) C. O(log2n) D. O(n2) 二、运算题(每题 6 分,共24分) 1. 1.数据结构是指数据及其相互之间的______________。当结点之间存在M 对N(M:N)的联系时,称这种结构为_____________________。 2. 2.队列的插入操作是在队列的_ _尾______进行,删除操作是在队列的____ 首______进行。 3. 3.当用长度为N的数组顺序存储一个栈时,假定用top==N表示栈空,则 表示栈满的条件是___top==0___(要超出才为满)_______________。 4. 4.对于一个长度为n的单链存储的线性表,在表头插入元素的时间复杂度 为_________,在表尾插入元素的时间复杂度为____________。

相关主题
文本预览
相关文档 最新文档