2014年数据结构补考试题
2014年10月全国自考数据结构考前密卷02331(含答案)

2014年10月全国自考数据结构考前密卷02331(含答案)一、单项选择题(本大题共15小题,每小题2分,共30分)在每小题列出的四个备选项目中只有一个是符号题目要求的,请将其代码填写的括号内.错选、多选或未选均无分。
第1题用数组A[0..N-1]存放循环队列的元素值,若其头尾指针分别为front和rear,则循环队列中当前元素的个数为()A. (rear-front+m) mod mB. (rear-front+1) mod mC. (rear-front-1+m) mod mD. (rear-front)mod m【正确答案】 A【你的答案】本题分数2分第2题考虑下列四种排序方法,在排序过程中,关键码比较的次数与记录的初始排列顺序无关的是()A. 直接插入排序和快速排序B. 快速排序和归并排序C. 直接选择排序和归并排序D. 直接插入排序和归并排序【正确答案】 C【你的答案】本题分数2分第3题下面关于线性表的叙述错误的是()A. 线性表采用顺序存储,必须占用一片连续的存储单元B. 线性表采用顺序存储,便于进行插入和删除操作C. 线性表采用链接存储,不必占用一片连续的存储单元D. 线性表采用链接存储,不便于插入和删除操作【正确答案】 A【你的答案】本题分数2分第4题对于一棵具有三个结点的二叉树,共有()种不同的树的形态。
A. 4B. 5C. 6【正确答案】 B【你的答案】本题分数2分第5题对文件进行直接存取的是根据()A. 逻辑记录号去存取某个记录B. 逻辑记录的关键字去存取某个记录C. 逻辑记录的结构去存取某个记录D. 逻辑记录的具体内容去存取某个记录【正确答案】 A【你的答案】本题分数2分第6题快速排序在最坏情况下的时间复杂度是()【正确答案】 B【你的答案】本题分数2分第7题在图的邻接表存储结构上执行深度优先搜索遍历类似于二叉树上的()A. 先序遍历B. 中序遍历C. 后序遍历D. 按层次遍历【正确答案】 A【你的答案】本题分数2分第8题已知一个向量的第一个元素的存储地址是100,每个元素的长度为2,则第6个元素的地址是()A. 120B. 112C. 110【正确答案】 C【你的答案】本题分数2分第9题对含有()个结点的非空二叉树,采用任何一种遍历方式,其结点访问序列均相同。
2014年江西省数据结构试题集(10套题并附带答案)最新考试题库(完整版)

16、G是一个非连通无向图,共28条边,则该图至少有( )个顶点
A 6 B 7 C 8 D 9
17、栈采用不同的存储方式时,下列关于出栈过程的叙述中,正确的是
27、G是一个非连通无向图,共28条边,则该图至少有( )个顶点
A 6 B 7 C 8 D 9
28、深度为k的完全二叉树所含叶结点的个数最多为( B)。
A)2k B) 2k-1 C)k D) 2k
42、如果最常用的操作是取第i个结点及其前驱,则采用 D 存储方式最节省时间。
A.单链表 B.双链表 C.单循环链表 D. 顺序表
43、在存储数据时,通常不仅要存储各数据元素的值,而且还要存储 C 。
A.数据的处理方法 B.数据元素的类型
A.动态结构和静态结构 B.紧凑结构和非紧凑结构
C.线性结构和非线性结构 D.内部结构和外部结构
33、深度为k的完全二叉树至多有( )个结点
A B C D
34、若一个栈以数组V[0..n-1]存储,初始栈顶指针top为n,则x入栈的正确操作是
38、在数据结构中,从逻辑上可以把数据结构分为 C 。
A.动态结构和静态结构 B.紧凑结构和非紧凑结构
C.线性结构和非线性结构 D.内部结构和外部结构
39、非空的循环单链表head的尾结点(由p所指向)满足 C 。
A.p->next == NULL B.p == NULL
C.数据元素之间的关系 D.数据的存储方法
44、非空的循环单链表head的尾结点(由p所指向)满足 C 。
A.p->next == NULL B.p == NULL
14数据结构a卷参考答案

2014数据结构A卷参考答案试卷编号命题人:审核人:试卷分类A五邑大学试卷及参考答案与评分标准学期:2013至2014学年度第 1 学期课程:数据结构课程代号:0800310使用班级:120109姓名:学号:题号得分一、得分一、单项选择题1.设栈S和队列Q的初始状态为空,元素e1,e2,e3,e4,e5,e6依次通过栈S,一个元素出栈后即进入队列Q,若6个元素出队的顺序是e2,e4,e3,e6,e5,e1,则栈S的容量至少应该是。
A. 2 B.3 C.4 D.6 一二三四五六七八九十总分2.4个叶子结点构造一棵哈夫曼树,该树的总结点数是。
A.4 B.5C.6 D.7 具有n个叶子节点的哈夫曼树共有2n-1 个结点3.对于长度为m的指定序列,通过初始为空的一个栈、一个队列后,错误的叙述是。
A.若入栈和入队列的序列相同,则出栈序列和出队序列可能相同B.若入栈和入队列的序列相同,则出栈序列和出队序列可以互为逆序C.入队序列与出队序列关系为1:1,而入栈序列与出栈序列关系是1: n (n≥1) D.入队序列与出队序列关系为1: n (n≥1),而入栈序列与出栈序列关系是1:1 第一句:入队列和出队列的是一样的,要是什么就都是什么,是1:1,一个入队列只可能对应一个出队列第2句:一个入栈序列可能对应多个出站队列1:n 4.在一个单链表HL中,若要删除指针q所指结点的后继结点,则执行。
A.p=q->next; q->next=p->next; C.p=q->next; p->next=q->next; B.p=q->next; q->next=p; D.q->next=q->next->next; q->next=q; 5.假设有如下遗产继承规则:丈夫和妻子可以相互继承遗产;子女可以继承父亲或母亲的遗产;子女之间不能相互继承。
则表示该遗产继承关系的数据结构应该是。
2014辽宁省JAVA版数据结构最新考试试题库(完整版)

1、有一个有序表{1,4,6,10,18,35,42,53,67,71,78,84,92,99}。
当用二分查找法查找键值为84的结点时,经( B )比较后查找成功。
A) 4 B)3 C)2 D)122、在一个链队列中,假定front和rear分别为队首和队尾指针,则删除一个结点的操作为( B )。
A) rear=rear->next; B) front=front->next;C) rear=front->next; D) front=rear->next ;3、( C )在进行插入操作时,常产生假溢出现象。
A)顺序栈 B)循环队列C)顺序队列 D)链队列4、采用链结构存储线性表时,其地址( B )。
A)必须是连续的 B)连续不连续都可以C)部分地址必须是连续 D)必须是不连续的5、栈进行插入和删除操作的特点是( A )。
A)LIFO B)FIFOC)FCFS D)HPF6、设单链表中指针p指着结点A,若要删除A之后的结点(若存在),则需要修改指针的操作为( A )。
A)p->next=p->next->next B)p=p->nextC)p=p->nexe->next D)p->next=p7、线性表的链接实现有利于( A )运算。
A)插入 B)读元素C)查找D)定位8、队列的操作的原则是( A )。
A)先进先出 B) 后进先出C) 只能进行插入 D) 只能进行删除9、设一数列的顺序为1,2,3,4,5,6,通过栈结构不可能排成的顺序数列为( B )。
A)3,2,5,6,4,1 B)1,5,4,6,2,3C)2,4,3,5,1,6 D)4,5,3,6,2,110、在一棵度为3的树中,度为3的结点个数为2,度为2的结点个数为1,则度为0的结点个数为( C )。
A)4 B)5C)6 D)711、线索二叉树中某结点D,没有左孩子的条件是( B )。
2014年湖南省数据结构(C++)试题及答案

19、衡量查找算法效率的主要标准是( C )。
A)元素个数 B)所需的存储量
C)平均查找长度 D)算法难易程度
20、不带头结点的单链表head为空的判定条件是 A 。
A.head == NULL B head->next ==NULL
B.不仅数据元素所包含的数据项的个数要相同,而且对应的数据项的类型要一致
C.每个数据元素都一样
D.数据元素所包含的数据项的个数要相等
25、当一个作为实际传递的对象占用的存储空间较大并可能需要修改时,应最好把它说明为( )参数,以节省参数值的传输时间和存储参数的空间。
A.整形 B.引用型
C.分析算法的效率以求改进 C.分析算法的易读性和文档性
(2)A.空间复杂度和时间复杂度 B.正确性和简明性
C.可读性和文档性 D.数据复杂性和程序复杂性
31、在决定选取何种存储结构时,一般不考虑 A 。
A.各结点的值如何 B.结点个数的多少
40、下述排序方法中,时间性能和待排序记录的初始状态无关的是( )
A 插入排序和快速排序 B 归并排序和快速排序
C 选择排序和归并排序 D 插入排序和归并排序
41、在以下的叙述中,正确的是 B 。
A.线性表的顺序存储结构优于链表存储结构
A.单链表 B.静态链表 C.线性链表 D.顺序存储结构
23、深度为k的完全二叉树所含叶结点的个数最多为( B)。
A)2k B) 2k-1 C)k D) 2k
24、通常要求同一逻辑结构中的所有数据元素具有相同的特性,这意味着 B 。
A.数据元素具有同一特点
C.指针型 D.常值引用型?
26、通常要求同一逻辑结构中的所有数据元素具有相同的特性,这意味着 B 。
2014黑龙江省JAVA版数据结构最新考试试题库(完整版)

1、在一棵度为3的树中,度为3的结点个数为2,度为2的结点个数为1,则度为0的结点个数为( C )。
A)4 B)5C)6 D)72、有一个有序表{1,4,6,10,18,35,42,53,67,71,78,84,92,99}。
当用二分查找法查找键值为84的结点时,经( B )比较后查找成功。
A) 4 B)3 C)2 D)123、n个顶点,e条边的有向图的邻接矩阵中非零元素有( C )个。
A)n B)2e C)e D) n+e4、下列各种数据结构中属于线性结构的有( A )。
A)栈 B) 二叉树C) 广义表 D) 图5、已知栈的最大容量为4。
若进栈序列为1,2,3,4,5,6,且进栈和出栈可以穿插进行,则可能出现的出栈序列为( C )。
A) 5,4,3,2,1,6 B) 2,3,5,6,1,4C) 3,2,5,4,1,6 D) 1,4,6,5,2,36、设单链表中指针p指向结点m,若要删除m之后的结点(若存在),则需修改指针的操作为( A )。
A)p->next=p->next->next; B) p=p->next;C)p=p->next->next; D) p->next=p;7、设单链表中指针p指向结点m,若要删除m之后的结点(若存在),则需修改指针的操作为( A )。
A)p->next=p->next->next; B) p=p->next;C)p=p->next->next; D) p->next=p;8、向一个栈顶指针为hs的链栈中插入一个s结点时,应执行( D )。
A) hs->next=s; B) s->next=hs->next; hs->next=s;C) s->next=hs; hs=s; D) s->next=hs; hs=hs->next;9、若一棵二叉树具有10个度为2的结点,5个度为1的结点,则度为0的结点的个数是( B )。
全国2014年10月自考《数据结构》试题及其答案【在最后】

大题共4小题,每小题5分。
共20分)
请在答题卡上作答。
26.设Q是有N个存储空间的循环队列,初始状态front=rear=0,约定指针rear指向的单元始终为空,回答下列问题。
请根据最优二叉树的基本原理,采用类C语言,描述你所设计的成绩判定过程。
29.给定有向无环图G如题29图所示,写出G的5种不同的拓扑排序序列。
的单链表定义如下,其中freq域记录本结点被访问的次数,初值为0,单链表始终以freq 序。
函数f3l完成的功能是:查找给定关键字所在结点,若查找成功,则该结点的freq域加值调整结r旨位置。
请将空白处(1)~(3)补充完整。
在答题卡上作答。
回答下列问题。
五、算法设计题(本大题共l小题,共“l0分) 请在答题卡上作答。
34.已知带头结点的单链表类型定义如下:
- 10 -。
2014安徽省数据结构试题及答案

9、以下属于顺序存储结构优点的是( A )。
A) 存储密度大 B) 插入运算方便
C)删除运算方便 D)可方便地用于各种逻辑结构的存储表示
10、设单链表中指针p指向结点m,若要删除m之后的结点(若存在),则需修改指针的操作为( A )。
A)p->next=p->next->next; B) p=p->next;
C)p=p->next->next; D) p->next=p;
11、设单链表中指针p指向结点m,若要删除m之后的结点(若存在),则需修改指针的操作为( A )。
A)p->next=p->next->next; B) p=p->next;
C)p=p->next->next; D) p->next=p;
12、在一个链队列中,假定front和rear分别为队首和队尾指针,则删除一个结点的操作为( B )。
A) rear=rear->next; B) front=front->next;
C) rear=front->next; D) front=rear->next ;
29、用一维数组A进行顺序存储时,若起始地址为loc(A1),元素长度为c,则A的第i个数组单元在存放地址loc(Ai),等于( B )。
A)loc(A1)+i*c B)loc(A1)+(i-1)*c
C)loc(A1)+i*c+1 D)loc(A1)+(i+1)*c
C)队列 D)集合
3、线索二叉树中某结点D,没有左孩子的条件是( B )。
A)D->Lchild=Null B) D->ltag=1
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一填空题1.已知一N*N三角矩阵按行序为主序存放,下标从1开始,每个元素占l字节,则a[i][j]地址为当i≥j时,地址为i(i+1)/2+j-1;当i<j时,地址为n(n+1)/2。
2.在一个长度为n的顺序表中第i个元素(1<=i<=n)之前插入一个元素时,需向后移动n-i+1个元素。
3. 循环单链表的最大优点是:从任意节点出发都可以访问链表中的每一个元素。
4. 一个栈的输入序列是:1,2,3则不可能的栈输出序列是3,1,2。
5.在顺序表(8,11,15,19,25,26,30,33,42,48,50)中,用二分(折半)法查找关键码值20,需做的关键码比较次数为4。
6.具有256个结点的完全二叉树的深度为9。
7.判断一个无向图是一棵树的条件是有n个顶点,n-1条边的无向连通图。
8. 在有向图的邻接矩阵表示中,计算第I个顶点入度的方法第I列非零元素个数。
9.一个连通图的生成树是一个极小连通子图。
10.在哈希函数H(key)=key%p中,p值最好取小于等于表长的最大素数或不包含小于20的质因子的合数。
11.一个数据结构在计算机中表示(映像)称为存储结构。
12. 计算机执行下面的语句时,语句s的执行次数为(n+3)(n-2)/2。
FOR(i=l;i<n-l;i++)FOR(j=n;j>=i;j--)s;13.在单链表中设置头结点的作用是使所有链表的头指针非空,并使对单链表的插入、删除操作不需要区分是否为空表或是否在第一个位置进行,从而与其他位置的插入、删除操作一致(插入和删除首元结点时不用进行特殊处理)。
14.中缀式a+b*3+4*(c-d)对应的前缀式为 ++a×b3×4-cd,若a=1,b=2,c=3,d=4,则后缀式db/cc*a-b*+的运算结果为18 。
15.有向图G的强连通分量是指有向图的极大强连通子图。
18.设单链表的结点结构为(data,next),next为指针域,已知指针px指向单链表中data为x的结点,指针py指向data为y的新结点 , 若将结点y插入结点x之后,则需要执行以下语句: py->next=px->next; px->next=py;19. 数组的存储结构采用顺序存储方式。
二选择题1.以下数据结构中,哪一个是线性结构(D)A.广义表 B. 二叉树 C. 稀疏矩阵 D. 串2.对稀疏矩阵进行压缩存储目的是(C)。
A.便于进行矩阵运算 B.便于输入和输出 C.节省存储空间 D.降低运算的时间复杂度3.非空的循环单链表head的尾结点p↑满足(A)。
A.p↑.link=head B.p↑.link=NIL C.p=NIL D.p= head4.对于栈操作数据的原则是(B)。
A. 先进先出B. 后进先出C. 后进后出D. 不分顺序5.一个栈的输入序列为 1 2 3 4 5,则下列序列中不可能是栈的输出序列的是( B )。
A. 2 3 4 1 5B. 5 4 1 3 2C. 2 3 1 4 5D. 1 5 4 3 26.一棵二叉树高度为h,所有结点的度或为0,或为2,则这棵二叉树最少有( B )结点A.2h B.2h-1 C.2h+1 D.h+17.以下与数据的存储结构无关的术语是(D)。
A.循环队列 B. 链表 C. 哈希表 D. 栈8.当采用分快查找时,数据的组织方式为 ( B )A.数据分成若干块,每块内数据有序B.数据分成若干块,每块内数据不必有序,但块间必须有序,每块内最大(或最小)的数据组成索引块C. 数据分成若干块,每块内数据有序,每块内最大(或最小)的数据组成索引块D. 数据分成若干块,每块(除最后一块外)中数据个数需相同9.若一棵二叉树有5个度为2的结点,则该二叉树的叶结点个数为___B_____。
A.4 B.6 C.7 D.不确定10.引入二叉线索树的目的是( A)A.加快查找结点的前驱或后继的速度 B.为了能在二叉树中方便的进行插入与删除C.为了能方便的找到双亲 D.使二叉树的遍历结果唯一10.算法的计算量的大小称为计算的(B)。
A.效率 B. 复杂性 C. 现实性 D. 难度11.计算机算法指的是(C)。
A.计算方法 B. 排序方法 C. 解决问题的步骤序列 D. 调度方法12.从逻辑上可以把数据结构分为( C)两大类。
A.动态结构、静态结构 B.顺序结构、链式结构C.线性结构、非线性结构 D.初等结构、构造型结构13.若某线性表最常用的操作是存取任一指定序号的元素和在最后进行插入和删除运算,则利用( A )存储方式最节省时间。
A.顺序表 B.双链表C.带头结点的双循环链表 D.单循环链表14.若串S=’software’,其子串的数目是(B)。
A.8 B.37 C.36 D.915.串的长度是指(B)A.串中所含不同字母的个数 B.串中所含字符的个数C.串中所含不同字符的个数 D.串中所含非空格字符的个数16.广义表((a,b,c,d))的表头是(C),表尾是(B)。
A. aB.()C.(a,b,c,d)D.(b,c,d)18.在一棵高度为h 的完全二叉树中(根为第1层),所含结点个数不小于_____C ___。
A. 2h-1B. 2h+1C. 2h -1D. 2h19.对下图进行拓扑排序,下列序列中,不是其拓扑序列的是 CA .C1,C2,C3,C4,C5,C6,C7B .C1, C3,C2,C4,C5,C6,C7C .C1,C2,C3,C5,C4,C6,C7D .C1, C3,C2,C4,C6,C5,C7C4 C6 C7 C3C5 C1C2三 判断题1. 顺序存储方式的优点是存储密度大,且插入、删除运算效率高。
( × )2. 对任何数据结构链式存储结构一定优于顺序存储结构。
( × )3. 栈与队列是一种特殊操作的线性表。
( √ )4.广义表的取表尾运算,其结果通常是个表,但有时也可是个单元素值。
( × )5.完全二叉树中,若一个结点没有左孩子,则它必是树叶。
( √ )6.在二叉树的第i 层上至少有2i-1个结点(i>=1)。
( × )7.有向图的邻接矩阵是对称的。
( × )8.拓扑排序算法仅能适用于有向无环图。
( × )9.散列函数越复杂越好,因为这样随机性好,冲突概率小. ( × )10.在待排数据基本有序的情况下,快速排序效果最好。
( × )1. 数据元素是数据的最小单位。
( × )2. 数据的逻辑结构是指数据的各数据项之间的逻辑关系;( × )3.算法的优劣与算法描述语言无关,但与所用计算机有关。
( × )4.程序一定是算法。
( × )5.数据的物理结构是指数据在计算机内的实际存储形式。
( √ )6. 稀疏矩阵压缩存储后,必会失去随机存取功能。
( √ )7. 连通分量是无向图中的极小连通子图。
( × )8. 在顺序存储的线性表中插入或删除一个元素平均约移动表中一半元素。
( × )9. 广义表的表尾可以是原子,也可以是子表。
( √ )10.任何一棵树转换成二叉树,其右子树必为空。
( √ )四 简答题1.利用三元组存储任意稀疏数组时,在什么条件下才能节省存储空间。
答:当m 行n 列稀疏矩阵中非零元素个数为t ,当满足关系3*t<m*n 时,利用三元组存储稀疏数组时,才能节省存储空间。
2. ①试找出满足下列条件的二叉树1)先序序列与后序序列相同 2)中序序列与后序序列相同3)先序序列与中序序列相同 4)中序序列与层次遍历序列相同 答:(1)若先序序列与后序序列相同,则或为空树,或为只有根结点的二叉树(2)若中序序列与后序序列相同,则或为空树,或为任一结点至多只有左子树的二叉树.(3)若先序序列与中序序列相同,则或为空树,或为任一结点至多只有右子树的二叉树(4)若中序序列与层次遍历序列相同,则或为空树,或为任一结点至多只有右子树的二叉树②已知一棵二叉树的中序序列和后序序列分别为DBEAFIHCG和DEBHIFGCA,画出这棵二叉树。
答:AB CD E F GIH3.n个顶点的无向连通图最少有多少条边?n个顶点的有向连通图最少有多少条边?答:一个n个顶点的无向连通图最少有n-1 条边;个n个顶点的有向连通图最少有n 条边。
4.设有一组关键字{9,01,23,14,55,20,84,27},采用哈希函数:H(key)=key mod7 ,表长为10,用开放地址法的二次探测再散列方法Hi=(H(key)+di) mod10(di=12,22,32,…,)解决冲突。
要求:对该关键字序列构造哈希表,并计算查找成功的平均查找长度。
答:5.有5个带权结点,其权值分别为4,7,8,3,5,试以它们为叶子结点构造一棵哈夫曼树,并计算其带权路径长度WPL。
答:8754 3WPL=4*4+3*4+5*3+7*2+8*1=65(答案不唯一)6.在单链表和双向链表中,能否从当前结点出发访问到任何一个结点?答:在单链表中不能从当前结点(若当前结点不是第一结点)出发访问到任何一个结点,链表只能从头指针开始,访问到链表中每个结点。
在双链表中求前驱和后继都容易,从当前结点向前到第一结点,向后到最后结点,可以访问到任何一个结点。
(单链表不行,双向链表可以。
)7.设一组数据为{1,14,27,29,55,68,10,11,23},现采用的哈希函数是H(key)=key MOD 13,即关键字对13取模,冲突用链地址法解决,设哈希表的大小为13(0..12),试画出插入上述数据后的哈希表。
答:H(1) = 1%13=1 H(14)=14%13=1 H(27)=27%13=1H(29)=29%13=3 H(55)=55%13=3 H(68)=68%13=3H(10)=10%13=10 H(11)=11%13=11 H(23)=23%13=10所以得哈希表为:data nexttable 01 2 3 4 5 6 7 8 9 10 11 12五 程序算法1.先根次序Public void preOrder(){System.out.print(“先根次序遍历二叉树:”); preOrder(root);System.out.println();}2.后跟次序Public void postOrder(){System.out.print(“后根次序遍历二叉树:”); 12910111427 55 6823 data nextpostOrder(root);System.out.println();}3.折半算法C语言版:int Search_ Bin(SSTable ST,KeyType key){low = 1; high = ST.length;While(low <= high){mid = (low + high)/2;if (EQ(key,ST.elem[mid].key)) return mid;else if (LT(key,ST.elem[mid].key))high = mid-1;Else low = mid + 1;}Return();}Java 版教材《数据结构(Java版)》(第三版)263页从“public static <T>”一直到“return -1; }”4.在带头结点的双循环线性表L中第i个位置之前插入元素e。