数据结构模拟题2
数据结构练习题2[1]
![数据结构练习题2[1]](https://img.taocdn.com/s3/m/113b2381d4d8d15abe234e3e.png)
1、3个结点可构成棵不同形态的树。
2、利用直接选择排序算法对n个记录进行排序,最坏的情况下,记录交换的次数为。
3、一个图的_______表示法是唯一的,而______表示法是不唯一的。
4、一棵深度为h的满二叉树上的结点总数为,一棵深度为h的完全二叉树上的结点总数的最小值为,最大值为。
5、在一棵完全二叉树中有n个结点,对这些结点按层序编号,若一个结点编号为69,则其双亲编号为,有左孩子的条件是,其左孩子编号为。
6、二维数组M的成员是6个字符组成的串,行下标i的范围从0到8,列下标j的范围从1到10,则存放M至少需要________个字节;M的第8列和第5行共占___________个字节;若M按行优先方式存储,元素M[8][5]的起始地址与当M按列优先方式存储时的________元素的起始地址一致。
7、设有一顺序栈S,元素s1,s2,s3,s4,s5,s6依次进栈,如果6个元素出栈的顺序是s2,s3,s4,s6,s5,s1,则栈的容量至少应该是________。
8、在线性表的顺序存储中,元素之间的逻辑关系是通过决定的;在线性表的链式存储中,元素之间的逻辑关系是通过_________决定的。
9、n个顶点的连通图的生成树有n-1条边。
10、通常数组只有______给定一组有定义的下标,存取相应的数据__和___给定一组有定义的下标,修改相应数据元素的值_____两种运算,因此常采用__顺序_______来存储数组。
11、3个节点可以构成 5 棵不同形态的二叉树。
12、对于一棵具有n个结点的二叉树,当它为一棵完全二叉树时具有最小高度,即为∟log2n」+1,当它为一棵单支树时具有最大高度,即为n 。
13、在一棵有n个结点的完全二叉树中,对这些结点按层序编号,若一个结点编号为59,则其双亲编号为,若一个结点编号为23,则其有右孩子的条件是。
14、数组M中每个元素的长度是3个字节,行下标i从1到8,列下标j从1到10,从首地址EA开始连续存放在存储器中。
长沙理工大学数据结构模拟试卷2及答案

长沙理工大学数据结构模拟试卷2一、填空题(每空1分,共10分)1.顺序存储结构中数据元素之间的逻辑关系是由存储位置表示的,链接存储结构中的数据元素之间的逻辑关系是由()表示的。
2.非空的单循环链表由头指针head指示,则其尾结点(由指针p所指)满足()。
3.n个顶点的连通图用邻接矩阵表示时,该矩阵至少有()个非零元素。
4.()可作为实现递归函数调用的一种数据结构。
5.由权值为{3, 8, 6, 2, 5}的叶子结点生成一棵哈夫曼树,其带权路径长度为()。
6.设S="I_ am_ a_ teacther",其长度为()。
7.稀疏矩阵一般压缩存储方法有两种,分别是()和()。
8.分块有序是指将文件划分为若干块,()无序,()有序。
二、判断题(你认为正确的请打对,错误的打错。
每题2分,共10分)1.线性表的顺序存储结构优于链接存储结构。
2.B—树是一种动态索引结构,它既适用于随机查找,也适用于顺序查找。
3.在线索二叉树中,任一结点均有指向其前趋和后继的线索。
4.用一维数组存储二叉树时,总是以前序遍历存储结点。
5.在索引顺序表上采用分块查找,在等概率情况下,其平均查找长度不仅与子表个数有关,而且与每一个子表中的对象个数有关。
三、单选题(请把你认为正确的答案填入括号内,每小题1分,共10分)1.假设有如下遗产继承规则:丈夫和妻子可以相互继承遗产;子女可以继承父亲或母亲的遗产;子女间不能相互继承。
则表示该遗产继承关系的最合适的数据结构应该是()。
A 树B 图C 线性表D 集合2.在解决计算机主机与打印机之间速度不匹配问题时通常设置一个打印缓冲区,该缓冲区应该是一个()结构。
A 栈B队列 C 数组D线性表3.若某线性表经常的操作是取第i 个元素和找第i个元素的前趋,则采用()存储方法最节省时间。
A 顺序表B 单链表C 双链表D 单循环链表4.广义表(a, b, (c, (d)))的表尾是()。
数据结构考试题2

else
break;
}
while (p!=NULL && q!=NULL && p->data==q->data)
{//当两者值相等时同步后移
p=p->next;
q=q->next;
}
if (q==NULL)//当B中节点比较完毕返回1
return 1;
else//否则返回0
return 0;
三
1.设A=(a1,a2,…,an),B=(b1,b2,…,bm)是两个递增有序的线性表(其中n、m均大于1),且所有数据元素均不相同。假设A、B均采用带头节点的单链表存放,设计一个尽可能高效的算法判断B是否为A的一个子序列,并分析你设计的算法的时间复杂度和空间复杂度。(15分)
2.假设二叉树b采用二叉链存储结构存储,试设计一个算法,输出该二叉树中从根节点出发的第一条最长的路径长度,并输出此路径上各节点的值。并分析你设计的算法的时间复杂度和空间复杂度。(15分)
{//pathlen和maxpathlen的初值均为0
int i;
if (b==NULL)
{if (pathlen>maxpathlen)//通过比较求最长路径
{for (i=pathlen-1;i>=0;i--)
maxpath[i]=path[i];
maxpathlen=pathlen;
}
}
else
}
}
A. O(n)B. O( )
C. O(nlog2n)D. O(log2n)
3.在一个双链表中,删除p所指节点(非首、尾节点)的操作是。
A.p->prior->next=p->next;p->next->prior=p->prior;
数据结构考试题(二)

数据结构试卷(一)一、选择题(30分)1.设一维数组中有n个数组元素,则读取第i个数组元素的平均时间复杂度为()。
(A) O(n)(B) O(nlog2n)(C) O(1)(D) O(n2)2.设一棵二叉树的深度为k,则该二叉树中最多有()个结点。
(A) 2k-1(B) 2k(C) 2k-1(D) 2k-13.设某无向图中有n个顶点e条边,则该无向图中所有顶点的入度之和为()。
(A) n(B) e(C) 2n(D) 2e4.在二叉排序树中插入一个结点的时间复杂度为()。
(A) O(1)(B) O(n)(C) O(log2n)(D) O(n2)5.设某有向图的邻接表中有n个表头结点和m个表结点,则该图中有()条有向边。
(A) n(B) n-1(C) m(D) m-16.设一组初始记录关键字序列为(345,253,674,924,627),则用基数排序需要进行()趟的分配和回收才能使得初始关键字序列变成有序序列。
(A) 3(B) 4(C) 5(D) 87.设用链表作为栈的存储结构则退栈操作()。
(A) 必须判别栈是否为满(B) 必须判别栈是否为空(C) 判别栈元素的类型(D) 对栈不作任何判别8.下列四种排序中()的空间复杂度最大。
(A) 快速排序(B) 冒泡排序(C) 希尔排序(D) 堆9.设某二叉树中度数为0的结点数为N0,度数为1的结点数为N l,度数为2的结点数为N2,则下列等式成立的是()。
(A) N0=N1+1(B) N0=N l+N2(C) N0=N2+1(D) N0=2N1+l10.设有序顺序表中有n个数据元素,则利用二分查找法查找数据元素X的最多比较次数不超过()。
(A) log2n+1(B) log2n-1(C) log2n(D) log2(n+1)二、填空题(42分)1.1.设有n个无序的记录关键字,则直接插入排序的时间复杂度为________,快速排序的平均时间复杂度为_________。
数据结构试题2(含答案)

期末样卷参考答案一.是非题(每题2分共20分)1. 线性表的链式存储结构优于顺序存储结构。
F2. 栈和队列也是线性表。
如果需要,可对它们中的任一元素进行操作。
F3.字符串是数据对象特定的线性表。
T4.在单链表P指针所指结点之后插入S结点的操作是:P->next= S ; S-> next = P->next; F 5.一个无向图的连通分量是其极大的连通子图。
T6.邻接表可以表示有向图,也可以表示无向图。
T7.假设B是一棵树,B′是对应的二叉树。
则B的后根遍历相当于B′的中序遍历。
T8.通常,二叉树的第i层上有2i-1个结点。
F9.对于一棵m阶的B-树,树中每个结点至多有m 个关键字。
除根之外的所有非终端结点至少有┌m/2┐个关键字。
F10.对于任何待排序序列来说,快速排序均快于起泡排序。
F二.选择题(每题2分共28分)1.在下列排序方法中,(c)方法平均时间复杂度为0(nlogn),最坏情况下时间复杂度为0(n2);(d)方法所有情况下时间复杂度均为0(nlogn)。
a. 插入排序b. 希尔排序c. 快速排序d. 堆排序2. 在有n个结点的二叉树的二叉链表表示中,空指针数为(b)。
a.不定b.n+1c.nd.n-13. 下列二叉树中,(a)可用于实现符号不等长高效编码。
a.最优二叉树b.次优查找树c.二叉平衡树 ••d.二叉排序树4. 下列查找方法中,(a)适用于查找有序单链表。
a.顺序查找b.二分查找c.分块查找d.哈希查找5. 在顺序表查找中,为避免查找过程中每一步都检测整个表是否查找完毕,可采用(a)方法。
a.设置监视哨b.链表存贮c.二分查找d.快速查找6. 在下列数据结构中,(c)具有先进先出特性,(b)具有先进后出特性。
a.线性表 b.栈 c.队列 d.广义表7.具有m个结点的二叉排序树,其最大深度为(f),最小深度为(b)。
a. log 2 mb. └ log2 m ┘ +1c. m/2 d .┌ m/2 ┐ -1e. ┌ m/2 ┐f. m8.已知一组待排序的记录关键字初始排列如下:56,34,58,26,79,52,64,37,28,84,57。
国家二级C语言(数据结构与算法)机试模拟试卷2(题后含答案及解析)

国家二级C语言(数据结构与算法)机试模拟试卷2(题后含答案及解析)题型有:1. 选择题选择题1.算法中,对需要执行的每一步操作,必须给出清楚、严格的规定。
这属于算法的A.正当性B.可行性C.确定性D.有穷性正确答案:C解析:本题考查算法的基本特征。
算法的可行性表示算法中执行的任何步骤都是可以被分解为基本的可执行的操作步:确定性是指算法的每一步骤必须有确切的含义;有穷性是指算法必须能在执行有限个步骤之后终止。
知识模块:数据结构与算法2.下列叙述中正确的是A.算法就是程序B.设计算法时只需要考虑数据结构的设计C.设计算法时只需要考虑结果的可靠性D.以上三种说法都不对正确答案:D解析:所谓算法是指解题方案的准确而完整的描述。
是一组严谨地定义运算顺序的规则,并且每一个规则都是有效的,且是明确的,此顺序将在有限的次数下终止。
算法不等于程序,也不等于计算方法。
设计算法时不仅要考虑对数据对象的运算和操作,还要考虑算法的控制结构。
知识模块:数据结构与算法3.下列叙述中正确的是A.算法的效率只与问题的规模有关,而与数据的存储结构无关B.算法的时间复杂度是指执行算法所需要的计算工作量C.数据的逻辑结构与存储结构是一一对应的D.算法的时间复杂度与空间复杂度一定相关正确答案:B解析:算法的时间复杂度是指执行算法所需要的计算工作量。
算法的工作量用算法所执行的基本运算的次数来度量,而算法所执行的基本运算次数是问题规模的函数;算法的空间复杂度一般是指执行这个算法所需要的内存空间。
算法的时间复杂度与空间复杂度并不相关。
数据的逻辑结构就是数据元素之间的逻辑关系,它是从逻辑上描述数据元素之间的关系,是独立于计算机的;数据的存储结构是研究数据元素和数据元素之问的关系如何在计算机中表示,它们并非一一对应。
算法的执行效率不仅与问题的规模有关,还与数据的存储结构有关。
知识模块:数据结构与算法4.在DOS环境F,代表键盘和显示器的设备文件名为A.PRNB.CONC.NULD.LPT正确答案:B解析:本题考查DOS下面的虚拟设备文件,选项A)的PRN表示打印机,选项B)中的CON表示键盘或屏幕,选项C)的NUL表示虚拟空设备,选项D)的LPT表示并口。
《数据结构》模拟试卷二

模拟试卷二一、选择题(每小题2分,共10分)1.若线性表最常用的操作是存取第i个元素及其前趋的值,则采用存储方式节省时间。
a.单链表 b. 双链表c.单循环链表 d.顺序表2.对二叉树从1开始进行连续编号,要求每个结点的编号大于其左右孩子的编号,同一个结点的左右孩子中,其左孩子的编号小于其有孩子的编号,则可采用次序的遍历实现编号。
a.无序 b.中序c.后序 d.从根开始的层次遍历3.某二叉树的先序序列和后序序列正好相反,则该二叉树一定是的二又树。
a.空或只有一个结点 b. 高度等于其结点数C.任一结点无左孩子 d.任一结点无右孩子4.下列排序算法中,时间复杂度不受数据初始状态影响,恒为 O(nlog2n)的是。
a.堆排序 b. 冒泡排序c.直接选择排序 d. 快速排序5. 下列排序算法中,算法可能会出现下面情况:初始数据有序时,花费的时间反而最多。
a.堆排序 b.冒泡排序c.快速排序 d. SHELL排序二、判断题(每小题1分,共10分)1.()在循环队列中,若尾指针Rear大于头指针Front,则其元素个数为 Rear - Front。
2.()串是n个字母的有限序列(n >= 0)。
3. ( )若一棵二叉树的任一非叶子结点的度为2,则该二叉树为满二叉树。
4.()二叉树只能采用二又链表来存储。
5.()有向图用邻接矩阵表示后,顶点i的出度等于第i行中非0且非加的元素个数。
6.()图G的某一最小生成树的代价一定小于其他生成树的代价。
7.()给定结点数的平衡二叉树的高度是唯一的。
8.()9阶B树中,除报以外的任一结点中的关键字个数不少于4。
9.()只有在初始数据表为倒序时,冒泡排序所执行的比较次数最多。
10.()堆排序中,在输出一个根之后的调整操作中,“临时根”结点的值将被调到“叶子结点”上。
三、项空(每小题2分,共20分)l. 在单链表中,删除指针P所指结点的后继结点的语句是。
2.取出广义表A = ((x,y,z),(a,b,c,d))中原子b的函数是。
计算机专业基础综合数据结构(树与二叉树)模拟试卷2(题后含答案及解析)

计算机专业基础综合数据结构(树与二叉树)模拟试卷2(题后含答案及解析)题型有:1. 单项选择题 2. 综合应用题单项选择题1-40小题,每小题2分,共80分。
下列每题给出的四个选项中,只有一个选项是最符合题目要求的。
1.设树T的度为4,其中度为1、2、3和4的结点个数分别为4、1、1、1,则T中的叶子数为( )。
A.10B.11C.9D.7正确答案:D解析:根据题中条件可知,1×4+2×1+3+4+1=4+1+1+1+n0,由此可以得出:n0=1×4+2×1+3+4+1一(4+1+1+1)=14—7=7. 知识模块:数据结构2.用下列元素序列(22,8,62,35,48)构造平衡二叉树,当插入( )时,会出现不平衡的现象。
A.22B.35C.48D.62正确答案:C解析:由题中所给的结点序列构造二叉排序树的过程如下图:当插入48后,首次出现不平衡子树,虚线框内即为最小不平衡子树。
知识模块:数据结构3.下面的算法实现了将二叉树中每一个结点的左右子树互换。
addQ(Q,bt)为进队的函数,delQ(Q)为出队的函数,empty(Q)为判别队列是否为空的函数,空白处应填的内容是( )。
typedef struct node{ int data;struct node*lchild,*rchild;}btnode;void exchange(btnode*bt){ btnode*p,*q;if(bt){ addQ(Q,bt);while(!EMPTY(Q)){ p=delQ(Q);q=p->rchild;p一>rchild=p一>lchild;( (1) )=q;if(p->lchild) ( (2) );if(p->rchild)addQ(Q,p->rchild);} }} A.p->lchild,delQ(Q,p一>lchild)B.p->rchild,delQ(Q,p->lchild)C.p->lchild,addQ(Q,p->lchild)D.p->rchild,addQ(Q,p->lchild)正确答案:C 涉及知识点:数据结构4.已知有一棵二叉树,其高度为n,并且有且只有n个结点,那么二叉树的树形有( )种。
数据结构模拟试卷及参考答案

数据结构模拟试卷(一)及参考答案一.单项选择题(本大题共15小题,每小题2分,共30分)1.如果只想得到1024个元素组成的序列中的前5个最小元素,那么用( A )方法最快。
A、起泡排序B、快速排序C、堆排序D、直接选择排序2.算法分析的目的是(B)A.辨别数据结构的合理性B.评价算法的效率C.研究算法中输入与输出的关系D.鉴别算法的可读性3.在线性表的下列运算中,不改变数据元素之间结构关系的运算是(C)A.插入B.删除C.定位D.排序4.若进栈序列为1,2,3,4,5,6,且进栈和出栈可以穿插进行,则可能出现的出栈序列为(D)A.3,2,6,1,4,5 B.5,6,4,2,3,1C.1,2,5,3,4,6 D.3,4,2,1,6,55.设串sl=″DataStructureswithJava″,s2=″it″,则子串定位函数index(s1,s2)的值为(A)A.15 B.16C.17 D.186.一个顺序存储的线性表的第一个元素的存储地址是100,每个元素的长度为4,则第4个元素的存储地址是(B)。
A. 108B. 112C. 116D. 1207.从一个具有n个结点的单链表中查找其值等于x的结点,在查找成功的情况下,平均需要比较(C)个结点。
A. nB. n/2C. (n+1)/2D. (n-1)/28.在任意一棵二叉树的前序序列和后序序列中,各叶子之间的相对次序关系(D)A.不一定相同 B.互为逆序C.都不相同D.都相同9.高度为5的二叉树至多有结点数为(A)A. 63B. 32C. 24D.6410.若用邻接矩阵表示一个有向图,则其中每一列包含的″1″的个数为(B)A.图中每个顶点的出度B.图中每个顶点的入度C.图中弧的条数D.图中连通分量的数目11.图的邻接矩阵表示法适用于表示(C)A.无向图B.有向图C.稠密图D.稀疏图12.在一个单链表中,若p所指的结点不是最后一个结点,在p之后插入s所指的结点,则执行(D)。
计算机专业基础综合(数据结构)模拟试卷2

计算机专业基础综合(数据结构)模拟试卷2(总分:70.00,做题时间:90分钟)一、单项选择题(总题数:21,分数:42.00)1.单项选择题1-40小题。
下列每题给出的四个选项中,只有一个选项是最符合题目要求的。
(分数:2.00)__________________________________________________________________________________________ 解析:2.栈和队列的主要区别在于( )。
(分数:2.00)A.它们的逻辑结构不一样B.它们的存储结构不一样C.所包含的运算不一样D.插入和删除运算的限定不一样√解析:解析:栈和队列的逻辑结构都是线性的,都有顺序存储和链式存储,有可能包含的运算不一样,但不是其主要区别。
任何数据结构在针对具体问题时所包含的运算都可能不同。
所以正确答案是D。
3.若循环队列以数组Q[0..m-1]作为其存储结构,变量rear。
表示循环队列中的队尾元素的实际位置,其移动按rear=(rear+1)MOD m进行,变量length表示当前循环队列中的元素个数,则循环队列的队首元素的实际位置是( )。
(分数:2.00)A.rear-lengthB.(rear—length+m)MOD mC.(rear—length+1+m)MOD m √D.m-length解析:解析:按照循环队列的定义,因为元素移动按照rect=(rear+1)MOD m进行,则当数组Q[m—1]存放了元素之后,下一个入队的元素将存放到Q[0]中,因此队列的首元素的实际位置是(rear—length+1+m)MOD m。
4.一个以向量V[n]存储的栈,其初始栈顶指针top为n+1,则对于x,其正确的进栈操作是( )。
(分数:2.00)A.top=top+1;V[top]=xB.V[top]=x;top=top+1C.top=top-1;V[top]=x √D.V[top]=x;top=top-1解析:解析:此题考查的知识点是入栈的具体操作。
2011数据结构模拟真题2

一、选择题1. 评价一个算法时间性能的主要标准是(D )。
A、算法易于调试B、算法易于理解C、算法的稳定性和正确性D、算法的时间复杂度2. 计算机算法具备有输入、输出、(B )等五个特性。
A、可行性、可移植性和可扩充性B、可行性、确定性和有穷性C、确定性、有穷性和稳定性D、易读性、稳定性和安全性3. 带头结点的单链表head为空的判定条件是(B )。
A、head==NULLB、head->next==NULLC、head->next==headD、head!=NULL4. 以下关于线性表的说法不正确的是( C)。
A、线性表中的数据元素可以是数字、字符、记录等不同类型。
B、线性表中包含的数据元素个数不是任意的。
C、线性表中的每个结点都有且只有一个直接前趋和直接后继。
D、存在这样的线性表:表中各结点都没有直接前趋和直接后继。
5. 在顺序表中,只要知道(D ),就可在相同时间内求出任一结点的存储地址。
A、基地址B、结点大小C、向量大小D、基地址和结点大小6. ( C)运算中,使用顺序表比链表好。
A、插入B、删除C、根据序号查找D、根据元素值查找7. 一个长度为n的顺序表中,向第i个元素之前插入一个新元素时,需要向后移动(B)个元素。
A、n-iB、n-i+1C、n-i-1D、i8. (D )适合作为经常在首尾两端操作线性表的存储结构。
A、顺序表B、单链表C、循环链表D、双向链表9. 栈和队列的共同点是(C)A、都是先进后出B、都是先进先出C、只允许在端点处插入和删除元素D、没有共同点10. 一个队列的入列序列是1 2 3 4,则队列的输出序列是(B )。
A、4 3 2 1B、1 2 3 4C、1 4 3 2D、3 2 4 111. 队列与一般的线性表的区别在于(D )。
A、数据元素的类型不同B、运算是否受限制C、数据元素的个数不同D、逻辑结构不同12. “假上溢”现象会出现在(C )中。
A、循环队列B、队列C、链队列D、顺序队列二、填空题1.数据的逻辑结构被分为集合、线性结构、树形结构和图结构。
浙大城院数据结构期末模拟2

模拟21.数据在计算机内存中的表示是指。
A. 数据的存储结构B. 数据结构C. 数据的逻辑结构D. 数据元素之间的关系2. 对线性表,在下列情况下应当采用链表表示的是。
A. 经常需要随机地存取元素B. 经常需要进行插入和删除操作C. 表中元素需要占据一片连续的存储空间D. 表中的元素个数不变3.与单链表相比,双链表的优点之一是。
A.插入、删除操作更加简单。
B.可随机访问。
C.可以省略表头指针或表尾指针D.访问前驱结点更加方便4.如果最常用的操作是取第i个结点及前驱,则采用存储方式最节省时间。
A.顺序表 B.双链表C.单循环链表 D.单链表5.可以用带表头附加结点的链表表示线性表,也可以用不带表头附加结点的链表表示线性表,前者最主要的好处是。
A.可以加快对表的遍历 B. 使空表和非空表的处理统一C.节省存储空间 D. 可以提高存取表元素的速度6. 一个队列的入队序列是1,2,3,4, 则队列的输出序列是。
A. 4,3,2,1B. 1,2,3,4C. 1,4,3,2D. 3,2,4,17.栈和队列的共同点是。
A.都是先进先出 B.都是先进后出C.属于非线性结构 D.只允许在端点处插入和删除元素8.以下不是栈的基本运算的是。
A.删除栈顶元素 B. 删除栈底元素C.判断栈是否为空 D. 将栈置为空栈9.一个递归的定义可以用递归过程求解,也可以用非递归过程求解,若从运行时间来看,通常__________。
A.非递归算法比递归算法快B.非递归算法比递归算法慢C.非递归算法与递归算法时间一样D.非递归算法与递归算法时间不一定10. 在一个非空二叉数的中序遍历序列中,根结点的右边。
A. 只有右子树上的所有结点B.只有右子树上的部分结点C. 只有左子树上的部分结点D.只有左子树上的所有结点11. 有关树和二叉树的叙述错误的有。
A. 树中的最大度数没有限制,而二叉树结点的最大度数为2;B. 树的结点无左右之分,而二叉树的结点有左右之分;C. 树的每个结点的孩子数为0到多个, 而二叉树每个结点均有两个孩子;D. 树和二叉树均为树形结构。
《数据结构》模拟试题与参考答案2(四套题)

《数据结构》模拟试题A一、单项选择题(每题 3 分,共24分)1.下面关于线性表的叙述错误的是()。
(A) 线性表采用顺序存储必须占用一片连续的存储空间(B) 线性表采用链式存储不必占用一片连续的存储空间(C) 线性表采用链式存储便于插入和删除操作的实现(D) 线性表采用顺序存储便于插入和删除操作的实现2.设哈夫曼树中的叶子结点总数为m,若用二叉链表作为存储结构,则该哈夫曼树中总共有()个空指针域。
(A)2m-1 (B)2m (C) 2m+1 (D) 4m3.设顺序循环队列Q[0:M-1]的头指针和尾指针分别为F和R,头指针F总是指向队头元素的前一位置,尾指针R总是指向队尾元素的当前位置,则该循环队列中的元素个数为()。
(A) R-F (B) F-R (C) (R-F+M)%M (D) (F-R+M)%M4.设某棵二叉树的中序遍历序列为ABCD,前序遍历序列为CABD,则后序遍历该二叉树得到序列为()。
(A) BADC (B) BCDA (C) CDAB (D) CBDA5.设某完全无向图中有n个顶点,则该完全无向图中有()条边。
(A) n(n-1)/2 (B) n(n-1) (C) n2 (D) n2-16.设某棵二叉树中有2000个结点,则该二叉树的最小高度为()。
(A) 9(B) 10(C) 11(D) 127.设某有向图中有n个顶点,则该有向图对应的邻接表中有()个表头结点。
(A) n-1 (B) n (C) n+1 (D) 2n-18.设一组初始记录关键字序列(5,2,6,3,8),以第一个记录关键字5为基准进行一趟快速排序的结果为()。
(A) 2,3,5,8,6 (B) 3,2,5,8,6(C) 3,2,5,6,8 (D) 2,3,6,5,8二、填空题(每题2分,共16分)1.为了能有效地应用HASH查找技术,必须解决的两个问题是()和()。
2.下面程序段的功能实现数据x进栈,要求在下划线处填上正确的语句。
(完整word版)数据结构试题试卷二含答案

模拟试题二模拟试题二一、选择题(28分)1.设一数列的顺序为l,2,3,4,5,通过栈结构不可能排成的顺序数列为( )。
A)3,2,5,4,l B)1,5,4,2,3C)2,4,3,5,l D)4,5,3,2,l2。
二叉树的第3层最少有()个结点。
A)0 B)1 C)2 D)33。
—个n个顶点的连通无向图,其边的个数至少为( )。
A) n-l B)n C)n+l D)nlogn4。
下列排序方法中,( )的比较次数与记录的初始排列状态无关。
A)直接插入排序 B)起泡排序C)快速排序 D)直接选择排序5.-棵哈夫曼树总共有II个结点,则叶子结点有( )个。
A)5 B)6 C)7 D)96.已知某算法的执行时间为(n+n2)+log2(n+2),n为问题规模,则该算法的时间复杂度是( )。
A)O(n)B)O(n2) C)O(log2n)D)O(nlog2n)7。
如果一棵树有10个叶子结点,则该树总共至少有( )个结点。
A)lO B)11 C)19 D) 218。
—个100×100的三角矩阵a采用行优先压缩存储后,如果首元素a[0][0]是第一个元素,那么a[4] [2]是第( )个元素。
A)13 B) 401 C) 402 D)4039.有一棵二叉树如题图1,该树是()。
A)二叉平衡树B)二叉排序树C)堆的形状D)以上都不是10。
对于含有n个顶点e条边的无向连通图,利用Prim算法生成最小代价生成树,其时间复杂度为(),利用Kruska算法的时间复杂度为().A)O(log2n) B)0(n2) C)O(ne) D)O(elog2ne)11.具有n个顶点的完全有向图的边数为( ).A)n(n—l)/2 B)n(n-l) C) n2 D)n2—112。
设有100个元素,用折半查找时,最大比较次数为(),最小比较次数为()。
A)25 B)7 C) 10 D)l13。
在内部排序中,排序时不稳定的有().A)插入排序B)冒泡排序C)快速排序D)归并排序14.串是一种特殊的线性表,其特殊性体现在()。
数据结构 学习自测题-2

学习自测及答案1. 已知一维数组A采用顺序存储结构,每个元素占用4个存储单元,第9个元素的地址为144,则第一个元素的地址是()。
A 108B 180C 176D 1122.在长度为n的线性表中查找值为x的数据元素的时间复杂度为:()。
A O(0)B O(1)C O(n)D O(n2)3.在一个长度为n的顺序表的第i(1≤i≤n+1)个元素之前插入一个元素,需向后移动()个元素,删除第i(1≤i≤n)个元素时,需向前移动()个元素。
4.在单链表中,除了头结点以外,任一结点的存储位置由()指示。
5.当线性表采用顺序存储结构时,其主要特点是()。
6.在双链表中,每个结点设置了两个指针域,其中一个指向()结点,另一个指向()结点。
7.设A是一个线性表(a1, a2, …, an),采用顺序存储结构,则在等概率的前提下,平均每插入一个元素需要移动的元素个数为多少?若元素插在ai与ai+1之间(1≤i≤n)的概率为,则平均每插入一个元素所要移动的元素个数又是多少?8.线性表存放在整型数组A[arrsize]的前elenum 个单元中,且递增有序。
编写算法,将元素x插入到线性表的适当位置上,以保持线性表的有序性,并且分析算法的时间复杂度。
9. 已知单链表中各结点的元素值为整型且递增有序,设计算法删除链表中所有大于mink且小于maxk的所有元素,并释放被删结点的存储空间。
10.设单循环链表L1,对其遍历的结果是:x1, x2, x3,…, xn-1, xn。
请将该循环链表拆成两个单循环链表L1和L2,使得L1中含有原L1表中序号为奇数的结点且遍历结果为:x1, x3,… ;L2中含有原L1表中序号为偶数的结点且遍历结果为:… , x4, x2。
数据结构专升本模拟题及参考答案2

作业题(一)一、单项选择题1. 从逻辑上可以把数据结构分为()两大类。
A.动态结构、静态结构 B.顺序结构、链式结构C.线性结构、非线性结构 D.初等结构、构造型结构2. 链表不具有的特点是()A.插入、删除不需要移动元素 B.可随机访问任一元素C.不必事先估计存储空间 D.所需空间与线性长度成正比3.下面程序段的时间复杂度的量级为()。
For(i=1;i<=n;i++)For(j=1;j<=I;j++)For(k=1;k<=j;k++)X=x+1;A.O(1) B.O(n)C.O(n²) D.O(n³)4.在一个带头结点的双向循环链表中,若要在p所指向的结点之前插入一个新结点,则需要相继修改()个指针域的值。
A.2 B.3C.4 D.65、一个顺序存储线性表的第一个元素的存储地址是90,每个元素的长度是2,则第6个元素的存储地址是()。
A.98 B.100C.102 D.1066、判定一个栈s(最多元素为m0)为空的条件是()。
A.s-〉top! =0 B.s-〉top= =0C.s-〉top! =m0 D.s-〉top= =m07、循环队列用数组A[m](下标从0到m-1)存放其元素值,已知其头尾指针分别是front和rear,则当前队列中的元素个数是()。
A.(rear-front+m)%m B.rear-front+1C.rear-front-1 D. rear-front8、设有两个串S1与S2,求串S2在S1中首次出现位置的运算称作()。
A.连接 B.求子串C.模式匹配 D.判子串9、设串S1='ABCDEFG',S2='PQRST',函数con(x,y)返回x和y串的连接串,subs(s,i,j)返回串S的的从序号i的字符开始的j个字符组成的子串,len(s)返回串S的长度,则con(subs(S1,2,len(S2)),subs(S1,len(S2),2))的结果是()。
数据结构模拟题贰_答案

一、选择题(共20分,共10题,每题2分)1. 关于顺序表的叙述错误的是(D )。
A.要占用连续存储空间 B.单个数据所需内存空间比链表少C.随机存取功能比链表强D.插入与删除不需要移动大量元素2. 在线索化二叉树中,T所指结点没有左子树的充要条件是( B )。
A. T->Lchild=NULLB. T->LTag=1C. T->RTag=0D. T->RTag=13. 能够在AOE网络中计算源点到汇点最长路径的算法是( A )。
A. 关键路径算法B. 深度优先搜索C. 拓扑排序D. Prim4. 在长度为n的顺序线性表中顺序查找值为x的元素时,查找成功时的平均查找长度(等概率情况下)为( C )。
A. nB. n/2C. (n+1)/2D. (n-1)/25. 以下排序算法中不稳定的是(B )。
A. 冒泡排序B. 希尔排序C. 直接插入排序D. 归并排序6. 若长度为n的线性表采用顺序存储结构,删除表中1个数据元素的平均算法时间复杂度是( A )。
A. O( (n-1)/2 )B. O( (n+1)/2 )C. O( (n2-1)/2 )D. O( (n+1)/2 )7. 下列几种二叉树中任意交换其左右子树仍然保持性质不变的是( A )。
A. 最优二叉树B.排序二叉树C. 平衡二叉树D. 以上都不是8. 下面的说法中,正确的是( A )。
A. 全源最短路径Floyd算法非常类似矩阵的自乘运算B. 从源点到终点的最短路径是唯一的C. 无向图最小生成树权值之和一定小于其它生成树权值之和D. 任意一个AOV网中的关键路径是唯一的9. 希尔排序的时间复杂度是( D )。
A. O( n·log n )B. O( n2·log n )C. O(n2)D. 以上都不是10. 根据大顶堆的定义,下列四个序列中,是一个堆积的是( C )。
A. 7565301525452010B. 7565451030252015C. 7545653015252010D. 7545651025302015二、填空题(共20分,共5题,每空2分)1.为了区分循环队列判空的条件,循环队列判满的方法有计数器法、设置标志位法、牺牲一个存储单元法。
数据结构模拟试题(含答案)

数据结构模拟试题(含答案)一、单选题(共100题,每题1分,共100分)1、在一棵度为3的树中,度为3的结点数为2个,度为2的结点数为1个,度为1的结点数为2个,则度为0的结点数为()个。
A、5B、6C、7D、4正确答案:B2、假设在一棵二叉树中,双分支结点数为15,单分支结点数为30个,则叶子结点数为()个。
A、15B、47C、16D、17正确答案:C3、设某哈夫曼树中有199个结点,则该哈夫曼树中有()个叶子结点。
A、100B、99C、102D、101正确答案:A4、一棵含18个结点的二叉树的高度至少为( )A、5B、4C、6D、3正确答案:A5、有关栈的描述,正确的是()A、栈是一种先进先出的特殊的线性表B、只能从栈顶执行插入、删除操作C、只能从栈顶执行插入、栈底执行删除D、栈顶和栈底均可执行插入、删除操作正确答案:B6、若采用孩子兄弟链表作为树的存储结构,则树的后序遍历应采用二叉树的()A、中序遍历算法B、前序遍历算法C、后序遍历算法D、层次遍历算法正确答案:A7、若要在单链表中的结点*p之后插入一个结点*s,则应执行的语句是( ) typedef struct node { char data[8]; struct node *next; } LinkStrNode;A、s->next=p; p->next=s->next;B、s->next=p->next; p->next=s;C、p->next=s->next; s->next=p;D、p->next=s; s->next=p->next;正确答案:B8、在一个长度为n的顺序表的任一位置插入一个新元素的渐进时间复杂度为( )。
A、O(n)B、O(1)C、O(n2)D、O(n/2)正确答案:A9、执行一趟快速排序能够得到的序列是()。
A、[45,34,12,41] 55 [72,63,27]B、[63,12,34,45,27] 55 [41,72]C、[12,27,45,41] 55 [34,63,72]D、[41,12,34,45,27] 55 [72,63]正确答案:D10、带权有向图G用邻接矩阵A存储,则顶点i 的入度等于A中()。
数据结构试题及答案(2)

数据结构试题一、单选题(每题 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 1B. 3 2 1C. 3 1 2D. 1 2 35.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.O(n) D.O(n2)10.10. 从二叉搜索树中查找一个元素时,其时间复杂度大致为( C )。
A. O(n)B. O(1)C. O(log2n) D. O(n2)二、运算题(每题 6 分,共24分)1. 1. 数据结构是指数据及其相互之间的_对应关系(联系)。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
全真模拟试题(二)
一、单项选择题(在每个小题的4个备选答案中,选出正确的答案,并将其号码填在题后的括号内。
每小题2分,共24分)
3.若某线性表中最常用的操作是在最后一个元素之后插入一个元素和删除最后一个元素,则采用()存储方式最节省运算时间。
①单链表②双链表
③带头结点的双循环链表④容量足够大的顺序表
4.串是()
①一些符号构成的序列②有限个字母构成的序列
③一个以上的字符构成的序列④有限个字符构成的序列
7.一棵二叉树有n个结点,要按某顺序对该二叉树中的结点编号,(号码为1-n),编号须具有如下性质:二叉树中任一结点V,其编号等于其左子树中结点的最大编号加1。
而其右子树中结点的最小编号等于V的编号加1。
试问应按()遍历顺序编号。
①前根②中根③后根④层次
8.3个结点可构成()个不同形态的二叉树。
① 2 ②3 ③4 ④5
11.栈操作的原则是()
①先进先出②后进先出③栈顶插入④栈顶删除
二、判断题(判断下列各题是否正确,正确在括号内打“√”,错的打“×”。
每小题1分,共10分)
1.如果两个串含有相同的字符,则这两个串相等。
()
4.在顺序表中取出第i个元素所花费的时间与i成正比。
()
5.在栈满情况下不能作进栈运算,否则产生“上溢”。
( )
8.二叉排序树或者是一棵空二叉树,或者是具有下列性质的二叉树:若它的左子树非空,则根结点的值大于其左孩子的值;若它的右子树非空,则根结点的值小于其右孩子的值。
()
三、填空题(每空2分,共26分)
1.在带有头结点的单链表L中,若要删除第一个结点,则需执行下列三条语句:________;L->next=U->next;free(U);
4.在无头结点的双链表中,指针P所指结点是第一个结点的条件是______。
7.深度为8(根的层次号为1)的满二叉树有______个叶子结点。
8.将一棵有100个结点的完全二叉树按层编号,则编号为49的结点X,其双亲PARENT (X)的编号为_______。
10.设有一个链队,结点结构为front为队头指针,rear为队尾指针,当执行入队操作时需执行下列语句:
malloc(p);p->data=x; p->next=NULL;
________________;
________________;
四、应用题(共26分)
4.一个深度为d(根的层次号为1)的满K叉树有如下性质:第d层上的结点都是叶
子结点,其余各层上的每个结点都有K棵非空子树。
如果从根这一层开始从左到右顺序逐层对全部结点编号,且根结点的编号为1,问编号为n的结点有右兄弟的条件是什么?其右兄弟的编号是多少?(3分)
5.给定权值{5,10,12,15,30,40},构造相应的哈夫曼树,要求写构造歩骤。
(4分)6.已知一表为(Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec),按表中顺序依次插入初始为空的二叉排序树,要求:
⑴画出建立的二叉排序树。
(4分)
⑵求出在等概率情况下查找成功的平均查找长度。
(2分)
五、设计题(共14分)
1.设有一单链表L,结点结构为3个,试画出链表L的结构图,并编写算法判断该单链表L中的元素是否成等差关系,即:设各元素值次为
a 1,a
2
,a
3
,…,a
n
,判断a
i+1
-a
i
=a
i
-a
i-1
是否成立,其中i满足2<=i<=n-1.(8分)
2.设有一棵二叉树以二叉链表作为存储结构,结点结构为其中
data域中存放一个字符,(即‘0’<=data<=‘9’)(6分)。