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
2014河南省数据结构试题及答案
C)p->next=s->next; s->next=p D)p->next=s; s->next=q;
39、队列的操作的原则是( A )。
A)先进先出 B) 后进先出
A) Head(Head(Tail(Tail(L))))
B) Tail(Head(Head(Tail(L))))
C) Head(Tail(Head(Tail(L))))
D)Head(Tail(Head(Tail(Tail(L)))))
41、用一维数组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
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
22、n个顶点的图的最小生成树必定( D ),是不正确的描述。
A)不唯一 B)权的总和唯一
C)不含回路 D)有n条边
34、在一个链队列中,假定front和rear分别为队首和队尾指针,则插入一个结点的操作为( B )。
A)front=front->next; B) rear=rear->next;
C) rear=front->next; D) front=rear->next ;
2014年数据结构补考试题
2014年数据结构补考试题⼀填空题1.已知⼀N*N三⾓矩阵按⾏序为主序存放,下标从1开始,每个元素占l字节,则a[i][j]地址为当i≥j时,地址为i(i+1)/2+j-1;当i2.在⼀个长度为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;iFOR(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. 数组的存储结构采⽤顺序存储⽅式。
2014数据结构B卷参考答案
命题人:审核人:试卷分类(A卷或B卷) B五邑大学试卷参考答案及评分标准学期:2013至2014学年度第 1 学期课程:数据结构课程代号:0800310使用班级:120109 姓名:学号:单项选择题(10小题,每小题2分,共20分)1.有六个元素6,5,4,3,2,1 顺序进栈,问下列哪一个不是合法的出栈序列?(B )不是C吗?A. 5 4 3 6 1 2B. 4 5 3 1 2 6C. 3 4 6 5 2 1D. 2 3 4 1 5 62.由75个结点构造一棵完全二叉树,该树的深度是( B )。
A.4 B.5 C.6 D.7深度为k的最多节点个数:2的k次方-1。
具有n个结点的完全二叉树的深度为log2(n)[取整数]+1.不是D吗?3.下列算法:for (i=n-1;i>=1;i=i/2 )for(j=1;j<=i;j++)if( A[j]>A[j+1])A[j]与A[j+1]对换;其中n为正整数,则最后一行的语句频度在最坏情况下是(D )A. O(n)B. O(nlog2n)C. O(n3)D. O(n2)4.设栈S和队列Q的初始状态为空,元素e1,e2,e3,e4,e5和e6依次通过栈S,一个元素出栈后即进队列Q,若6个元素出队的序列是e2,e4,e3,e6,e5,e1则栈S的容量至少应该是( C )。
A.6 B. 4 C. 3 D. 25.数组A[6][7]的每个元素占五个字节,将其按列优先次序存储在起始地址为1000的内存单元中,则元素A[5][5]的地址是( A )。
假设下标从0开始。
A. 1175B. 1180C. 1205D. 1200A. i-j-1B. i-jC. j-i+1D. 不确定的7. 在单链表指针为p 的结点之后插入指针为s 的结点,正确的操作是:( B )。
A .p->next=s;s->next=p->next; B . s->next=p->next;p->next=s; C .p->next=s;p->next=s->next; D . p->next=s->next;p->next=s;8. 假设有如下遗产继承规则:丈夫和妻子可以相互继承遗产;子女可以继承父亲或母亲的遗产;子女之间不能相互继承。
2014数据结构试题及答案
101. 【第1章绪论】一个算法的时间复杂度为(n3+n2log2n+14n)/n2,其数量级表示为____O(n)____。
102. 【第1章绪论】数据的物理结构主要包括_____________和______________两种情况。
元素的表示,关系的表示103. 【第1章绪论】for(i=1,t=1,s=0;i<=n;i++) {t=t*i;s=s+t;}的时间复杂度为_________。
O(n)104.【第2章线性表】设指针变量p指向双向循环链表中的结点X,则删除结点X需要执行的语句序列为_________________________________________________________(设结点中的两个指针域分别为llink和rlink)。
p>llink->rlink=p->rlink; p->rlink->llink=p->rlink105. 【第2章线性表】设有一个顺序循环队列中有M个存储单元,则该循环队列中最多能够存储________个队列元素;当前实际存储________________个队列元素(设头指针F指向当前队头元素的前一个位置,尾指针指向当前队尾元素的位置)。
M-1 ,(R-F+M)%M106. 【第2章线性表】设顺序线性表中有n个数据元素,则第i个位置上插入一个数据元素需要移动表中_______个数据元素;删除第i个位置上的数据元素需要移动表中_______个元素。
n+1-i ,n-i107. 【第2章线性表】设指针变量p指向单链表中结点A,指针变量s指向被插入的新结点X,则进行插入操作的语句序列为__________________________(设结点的指针域为next)。
s->next=p->next; p->next=s108.【第2章线性表】设F和R分别表示顺序循环队列的头指针和尾指针,则判断该循环队列为空的条件为_____________________。
2014年湖南省数据结构基础最新考试题库(完整版)
C.可读性和文档性 D.数据复杂性和程序复杂性
22、若某表最常用的操作是在最后一个结点之后插入一个结点或删除最后一个结点,则采用
D 存储方式最节省运算时间。
A.单链表 B.给出表头指针的单循环链表 C.双链表 D.带头结点的双循环链表
A.head == NULL B head->next ==NULL
C.head->next ==head D head!=NULL
31、数据结构中,从逻辑上可以把数据结构分成(?)。
?A.动态结构和静态结构?B.紧凑结构和非紧凑结构?C.线性结构和非线性结构?D.内部结构和外部结构
32、在一个单链表HL中,若要向表头插入一个由指针p指向的结点,则执行( )。
B. p一>next=HL;HL=p3
D.s->next = p;s->prior = p->prior;p->prior->next = s;p->prior = s
27、长度为n的顺序表,删除位置i上的元素(0≤i≤n一1),需要移动的元素个数为
A.n—i B.n—i—l C.i D.i+1
B.p->prior = s;p->prior->next = s;s->next = p;s->prior = p->prior
C.s->next = p;s->prior = p->prior;p->prior = s;p->prior->next = s
D.s->next = p;s->prior = p->prior;p->prior->next = s;p->prior = s
北航数据结构与程序设计真题 14年真题及答案
一、1. P=rear->link->link;rear->link->link=p->link;free(p);2. 两个栈顶相遇3. 954. 后序5. 连通图6. f,c,b7. 每个分支结点最多有m棵子树8. n(n-1)/2 9.插入排序法10. an,deng,shi,bai,fang,liu,tang,wang二、1. 有穷性、确定性、可行性、输入、输出2.(1) (2) (3) (4)顺O(1) O(1) O(n) O(n)链O(n) O(1) O(n) O(n)3. 2^(n-1)4.链地址三、1. 321 231 213 123 1323. 114. 可以(08年一4)四void DEGREE(VLink G[], int n){ int num,i; VLink v; ELink *p;for(i=0; i<n; i++){v=G[i];num=0;p=v.link;while(p!=NULL){num++;p=p->next;}G[i].degree=num;}}五、1-5 DACCA 6-10 BDCAB六、1. 不正确,因为数组名a代表数组首元素的地址,它是一个指针常量,它的值在程序运行期间是不变的2. sizeof是算符,strlen是函数;strlen是返回字符串的长度,而sizeof却是用来取得变量所占用的内存;返回的单位不一样3. s1必须定义得足够大,以便容纳被复制的字符串s2,s1的长度不应小于s2的长度4. 函数指针是一个指向某函数起始地址的指针;指针函数是带指针的函数,返回类型是某一类型的指针5. 返回地址信息、实参信息七、1. a[k-1] a[9-k] 2. k%j==0 continue3.Substr[k+1]==’\0’i+14. *p==*q *olds++ *new=’\0’5.fopen(“file.dat”, “r”) fp, “%d”, &num i==count八、#include<stdio.h>#include<string.h>main(){ int STRCOUNT(char *str, char *substr);char str[80], substr[80]; int num;printf(“Input sring:”);gets(str);printf(“Input substring:”);gets(substr);num=STRCOUNT(str, substr);printf(“num = %d”, num);}int STRCOUNT(char *str, char *substr) //根据第七大题4改写的{ char *p, *q;int num=0;while(*str!=’\0’){for(p=str, q=substr; *p!=’\0’&&*q!=’\0’&&*p==*q; p++, q++);if(*q!=’\0’)*str++;else{num++;str=p;}}return num;}By Jason LeeRoc°卡卡。
2014年安徽省数据结构(C++)最新考试试题库(完整版)
12、深度为k的完全二叉树至多有( )个结点
A B C D
13、G是一个非连通无向图,共28条边,则该图至少有( )个顶点
A 6 B 7 C 8 D 9
14、G是一个非连通无向图,共28条边,则该图至少有( )个顶点
A 6 B 7 C 8 D 9
15、数据结构中,从逻辑上可以把数据结构分成(?)。
?A.动态结构和静态结构?B.紧凑结构和非紧凑结构?C.线性结构和非线性结构?D.内部结构和外部结构
C.分析算法的效率以求改进 C.分析算法的易读性和文档性
(2)A.空间复杂度和时间复杂度 B.正确性和简明性
C.可读性和文档性 D.数据复杂性和程序复杂性
37、非空的循环单链表head的尾结点(由p所指向)满足 C 。
A.p->next == NULL B.p == NULL
A.删除单链表中的第一个元素
B.删除单链表中的最后一个元素
C.在单链表第一个元素前插入一个新元素
D.在单链表最后一个元素后插入一个新元素
3、长度为n的顺序表,删除位置i上的元素(0≤i≤n一1),需要移动的元素个数为
A.n—i B.n—i—l C.i D.i+1
C.p->next ==head D.p == head
38、数据结构中,从逻辑上可以把数据结构分成(?)。
?A.动态结构和静态结构?B.紧凑结构和非紧凑结构?C.线性结构和非线性结构?D.内部结构和外部结构
39、链表不具备的特点是 A 。
A.可随机访问任一结点 B.插入删除不需要移动元素
4、如果最常用的操作是取第i个结点及其前驱,则采用 D 存储方式最节省时间。
数据结构全国2014年4月高等教育自学考试
数据结构全国2014年4月高等教育自学考试全国2014年4月高等教育自学考试一、单项选择题(本大题共15小题,每小题2分,共30分)1.下列几种算法时间复杂度中,最小的是A.O(log2n)B.O(n)C.O(n2)D.O(1)2.数据的存储方式中除了顺序存储方式和链式存储方式之外,还有A.索引存储方式和树形存储方式B.线性存储方式和散列存储方式C.线性存储方式和索引存储方式D.索引存储方式和散列存储方式3.表长为n的顺序表中做删除运算的平均时间复杂度为A.O(1)B.O(log2n)C.O(n)D.O(n2)4.顺序表中定位算法(查找值为x的结点序号最小值)的平均时间复杂度为A.O(1)B.O(log2n)C.O(n)D.O(n2)5.元素的进栈次序为A,B,C,D,E,出栈的第一个元素为E,则第四个出栈的元素为A.DB.CC.BD.A6.带头结点的链队列中,队列头和队列尾指针分别为front和rear,则判断队列空的条件为A.front==rearB.front!=NULLC.rear!==NULLD.front==NULL7.深度为5的二叉树,结点个数最多为A.31个B.32个C.63个D.64个8.如果结点A有2个兄弟结点,结点B为A的双亲,则B的度为A.1B.3C.4D.59.将题9图所示的一棵树转换为二叉树,结点C是A.A的左孩子B.A的右孩子C.B的右孩子D.E的右孩子10.n为图的顶点个数,e为图中弧的数目,则图的拓扑排序算法的时间复杂度为A.O(n)B.O(e)C.O(n-e)D.O(n+e)11.无向图的邻接矩阵是A.对角矩阵B.稀疏矩阵C.上三角矩阵D.对称矩阵12.在具有101个元素的顺序表中查找值为x的元素结点时,平均比较元素的次数为A.50B.51C.100D.10113.构造散列函数的方法很多,常用的构造方法有A.数字分析法、除留余数法、平方取中法B.线性探测法、二次探测法、除留余数法C.线性探测法、除留余数法、链地址法D.线性探测法、二次探测法、链地址法14.就平均时间性能而言,快速排序方法最佳,其时间复杂度为A.O(n)B.O(nlog2n)C.O(n2)D.O(1og2n)15.下述算法中,不稳定的排序算法是A.直接插入排序B.冒泡排序C.堆排序D.归并排序二、填空题(本大题共13小题,每小题2分,共26分)16.数据的基本单位是_________。
2014年海南省C++答案 数据结构试卷及答案(必备资料)
C.栈的操作方式是先进先出
D.队列的操作方式是先进后出
41、若进栈序列为1,2,3,4,则不可能得到的出栈序列是( C )。
A)3,4,1
42、栈采用不同的存储方式时,下列关于出栈过程的叙述中,正确的是
A.删除单链表中的第一个元素
B.删除单链表中的最后一个元素
C.在单链表第一个元素前插入一个新元素
D.在单链表最后一个元素后插入一个新元素
35、在一个长度为n(n>1)的单链表上,设有头和尾两个指针,执行 B 操作与链表的长度有关。
A.删除单链表中的第一个元素
B.删除单链表中的最后一个元素
D 存储方式最节省运算时间。
A.单链表 B.给出表头指针的单循环链表 C.双链表 D.带头结点的双循环链表
20、与单链表相比,双链表的优点之一是 D 。
A.插入、删除操作更简单
B.可以进行随机访问
C.可以省略表头指针或表尾指针
D.顺序访问相邻结点更灵活
A.顺序栈需要判定栈空,链栈也需要判定
B.顺序栈需要判定栈空,而链栈不需要判定
C.顺序栈不需要判定栈空,而链栈需要判定
D.顺序栈不需要判定栈空,链栈也不需要判定
43、与单链表相比,双链表的优点之一是 D 。
A.插入、删除操作更简单
B.可以进行随机访问
C.可以省略表头指针或表尾指针
C.s->next = p;s->prior = p->prior;p->prior = s;p->prior->next = s
D.s->next = p;s->prior = p->prior;p->prior->next = s;p->prior = s
2014年青海省C++答案 数据结构试卷及答案(必备资料)
27、若某表最常用的操作是在最后一个结点之后插入一个结点或删除最后一个结点,则采用
D 存储方式最节省运算时间。
A.单链表 B.给出表头指针的单循环链表 C.双链表 D.带头结点的双循环链表
7、栈采用不同的存储方式时,下列关于出栈过程的叙述中,正确的是
A.顺序栈需要判定栈空,链栈也需要判定
B.顺序栈需要判定栈空,而链栈不需要判定
C.顺序栈不需要判定栈空,而链栈需要判定
D.顺序栈不需要判定栈空,链栈也不需要判定
8、下列关于哈夫曼树的叙述中,错误的是
A.用n个结点构造的哈夫曼树是唯一的
A.数据的处理方法 B.数据元素的类型
C.数据元素之间的关系 D.数据的存储方法
52、若进栈序列为1,2,3,4,则不可能得到的出栈序列是( C )。
A)3,2,1,4 B)3,2,4,1
C)4,2,3,1 D)2,3,4,1
53、在循环双链表的p所指的结点之前插入s所指结点的操作是 D 。
18、下述排序方法中,时间性能和待排序记录的初始状态无关的是( )
A 插入排序和快速排序 B 归并排序和快速排序
C 选择排序和归并排序 D 插入排序和归并排序
19、有向图采用邻接矩阵存储,某一行中非零元素的个数等于
A.对应顶点v的度
48、对于图1所示的二叉树,其后序序列为(C )。
A)ABDECFG B)DBEAFCG
C)DEBFGCA D)GFCEBDA
49、向一个长度为n的顺序表中插人一个新元素的平均时间复杂度为( )。
A.O(n) B.O(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。