数据结构模拟试题

合集下载

数据结构模拟测验题

数据结构模拟测验题

数据结构模拟试卷一一、单选题(每小题2分,共20分)1. 在数据结构的讨论中把数据结构从逻辑上分为()。

A.内部结构与外部结构 B. 静态结构与动态结构 C. 线性结构与非线性结构 D. 紧凑结构与非紧凑结构2. 采用线性链表表示一个向量时,要求占用的存储空间地址()。

A. 必须是连续的B. 部分地址必须是连续的C. 一定是不连续的D. 可连续可不连续3. 采用顺序搜索方法查找长度为n的顺序表时,搜索成功的平均搜索长度为()。

A. nB. n/2C. (n-1)/2D. (n+1)/24. 在一个单链表中,若q结点是p结点的前驱结点,若在q与p之间插入结点s,则执行()。

A. s→link = p→link; p→link = s;B. p→link = s; s→link = q;C. p→link = s→link; s→link = p;D. q→link = s; s→link = p;5. 如果想在4092个数据中只需要选择其中最小的10个,采用()方法最好。

A.冒泡排序B. 堆排序C. 直接插入排序D. 快速排序6. 设有两个串t和p,求p在t中首次出现的位置的运算叫做()。

A. 求子串B. 模式匹配C. 串替换D. 串连接7. 在数组A中,每一个数组元素A[i][j]占用3个存储单元,行下标i从1到8,列下标j从1到10。

所有数组元素相继存放于一个连续的存储空间中,则存放该数组至少需要的存储单元是()。

A. 80B. 100C. 240D. 2708. 将一个递归算法改为对应的非递归算法时,通常需要使用()。

A. 栈B. 队列C. 循环队列D. 优先队列9. 一个队列的进队列顺序是1, 2, 3, 4,则出队列顺序为()。

A. 4, 3, 2, 1B. 2, 4, 3, 1C. 1, 2, 3, 4D. 3, 2, 1, 410. 在循环队列中用数组A[0..m-1] 存放队列元素,其队头和队尾指针分别为front和rear,则当前队列中的元素个数是()。

数据结构模拟试卷及参考答案

数据结构模拟试卷及参考答案

数据结构模拟试卷(一)及参考答案一.单项选择题(本大题共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.16 C.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 分,共20分)1.对一个算法的评价,不包括如下(B )方面的内容。

A.健壮性和可读性B.并行性C.正确性D.时空复杂度2.在带有头结点的单链表HL中,要向表头插入一个由指针p指向的结点,则执行( )。

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.对线性表,在下列哪种情况下应当采用链表表示?( )A.经常需要随机地存取元素B.经常需要进行插入和删除操作C.表中元素需要占据一片连续的存储空间D.表中元素的个数不变4.一个栈的输入序列为1 2 3,则下列序列中不可能是栈的输出序列的是( C )A. 2 3 1B. 3 2 1C. 3 1 2D. 1 2 35.AOV网是一种()。

A.有向图B.无向图C.无向无环图D.有向无环图6.采用开放定址法处理散列表的冲突时,其平均查找长度()。

A.低于链接法处理冲突 B. 高于链接法处理冲突C.与链接法处理冲突相同D.高于二分查找7.若需要利用形参直接访问实参时,应将形参变量说明为()参数。

A.值B.函数C.指针D.引用8.在稀疏矩阵的带行指针向量的链接存储中,每个单链表中的结点都具有相同的()。

A.行号B.列号C.元素值D.非零元素个数9.快速排序在最坏情况下的时间复杂度为()。

A.O(log2n) B.O(nlog2n)C.0(n) D.0(n2)10.从二叉搜索树中查找一个元素时,其时间复杂度大致为( )。

A. O(n)B. O(1)C. O(log2n)D. O(n2)二、运算题(每题 6 分,共24分)1.数据结构是指数据及其相互之间的______________。

当结点之间存在M对N (M:N)的联系时,称这种结构为_____________________。

计算机数据结构考试题及答案

计算机数据结构考试题及答案

全真模拟试题(一)一、单项选择题(在每小题的4个备选答案中,选出正确的答案,并将其号码填在题干的括号内。

每小题2分,共24分)1.若某线性表中最常用的操作是取第i 个元素和找第i个元素的前趋元素,则采用()存储方式最节省时间。

①单链表②双链表③单向循环④顺序表2.串是任意有限个()①符号构成的序列②符号构成的集合③字符构成的序列④字符构成的集合3.设矩阵A(aij ,l≤i,j≤ 10)的元素满足:aij≠0(i≥j, l≤i, j≤ 10)aij=0 (i<j, l≤i, j≤ 10)现将A的所有非0元素以行序为主序存放在首地址为2000的存储区域中,每个元素占有4个单元,则元素A[9][5]的首址为①2340 ②2336 ③2164 ④21604.如果以链表作为栈的存储结构,则退栈操作时()①必须判别栈是否满②对栈不作任何判别③必须判别栈是否空④判别栈元素的类型5.设数组Data[0..m]作为循环队列SQ的存储空间,front为队头指针,rear为队尾指针,则执行出队操作的语句为()①front=front+1 ②front=(front+1)% m③rear=(rear+1)%m ④front=(front+1)%(m+1)6.深度为6(根的层次为1)的二叉树至多有()结点。

①64 ②32 ③31 ④637.将含100个结点的完全二叉树从根这一层开始,每层上从左到右依次对结点编号,根结点的编号为1。

编号为49的结点X的双亲编号为()①24 ②25 ③23 ④无法确定8.设有一个无向图G=(V,E)和G’=(V’,E’)如果G’为G的生成树,则下面不正确的说法是()①G’为G 的子图②G’为G 的边通分量③G’为G的极小连通子图且V’=V④G’为G的一个无环子图9.用线性探测法查找闭散列表,可能要探测多个散列地址,这些位置上的键值()①一定都是同义词②一定都不是同义词③都相同④不一定都是同义词10.二分查找要求被查找的表是()①键值有序的链接表②链接表但键值不一定有序③键值有序的顺序表④顺序表但键值不一定有序11.当初始序列已经按键值有序,用直接插入算法对其进行排序,需要循环的次数为()①n2 ②nlog2n ③log2n ④n-112.堆是一个键值序列{k1,k2,…, kn},对i=1,2,…,|_n/2_|,满足( )①ki≤k2i≤k2i+1②ki<k2i+1<k2i③ki≤k2i且ki≤k2i+1(2i+1≤n)④ki≤k2i 或ki≤k2i+1(2i+1≤n)二、判断题(判断下列各题是否正确,正确在括号内打“V”,错的找“X”。

数据结构模拟试卷及参考答案

数据结构模拟试卷及参考答案

数据结构模拟试卷及参考答案一、简答题(共10题,每题10分,共计100分)1. 什么是数据结构?请简要解释。

数据结构是计算机中用于组织和存储数据的方式,它包含了一系列的数据元素,以及这些数据元素之间的关系和操作。

通过使用不同的数据结构,可以更高效地存储、查找和操作数据。

2. 请解释什么是栈,并给出一个栈的应用场景。

栈是一种具有特定操作限制的数据结构,它遵循"先进后出"(LIFO)的原则。

栈的应用场景包括函数调用、表达式求值、撤销操作以及浏览器中的历史记录。

3. 什么是队列?请给出一个队列的实际应用例子。

队列是一种具有特定操作限制的数据结构,它遵循"先进先出"(FIFO)的原则。

一个实际应用例子是操作系统的进程调度,进程按照到达时间加入队列,并按照一定规则出队执行。

4. 请解释什么是链表,并给出一个链表的优点和缺点。

链表是一种动态数据结构,它由一系列节点构成,每个节点包含数据和指向下一个节点的指针。

链表的优点是可以动态地分配内存空间,且插入和删除节点的时间复杂度为O(1)。

缺点是访问链表某个具体节点的时间复杂度为O(n),且需要额外的内存空间存储指针。

5. 请解释什么是树,并给出一个树的实际应用例子。

树是一种分层次的数据结构,它由一系列节点和节点之间的关系构成。

一个实际应用例子是文件系统的目录结构,文件和文件夹通过树的结构进行组织和存储。

6. 请解释什么是图,并给出一个图的实际应用例子。

图是一种由节点和节点之间的连接关系组成的数据结构。

一个实际应用例子是社交网络,人与人之间的关系可以用图来表示,每个人是一个节点,节点之间的连接表示关系。

7. 请解释什么是散列(哈希)表,以及它的优势和劣势。

散列表是一种根据关键字直接访问的数据结构,它通过将关键字映射到表中的位置来实现快速的查找操作。

散列表的优势是查找操作的平均时间复杂度为O(1)。

劣势是如果存在多个关键字映射到同一个位置,就会发生冲突,需要解决冲突问题。

十套数据结构模拟题+答案

十套数据结构模拟题+答案

数据结构试卷(一)一、选择题(20分)1.组成数据的基本单位是()。

(A) 数据项(B) 数据类型(C) 数据元素(D) 数据变量2.设数据结构A=(D,R),其中D={1,2,3,4},R={r},r={<1,2>,<2,3>,<3,4>,<4,1>},则数据结构A是()。

(A) 线性结构(B) 树型结构(C) 图型结构(D) 集合3.数组的逻辑结构不同于下列()的逻辑结构。

(A) 线性表(B) 栈(C) 队列(D) 树4.二叉树中第i(i≥1)层上的结点数最多有()个。

(A) 2i (B) 2i(C) 2i-1(D) 2i-15.设指针变量p指向单链表结点A,则删除结点A的后继结点B需要的操作为()。

(A) p->next=p->next->next (B) p=p->next(C) p=p->next->next (D) p->next=p6.设栈S和队列Q的初始状态为空,元素E1、E2、E3、E4、E5和E6依次通过栈S,一个元素出栈后即进入队列Q,若6个元素出列的顺序为E2、E4、E3、E6、E5和E1,则栈S的容量至少应该是()。

(A) 6 (B) 4 (C) 3 (D) 27.将10阶对称矩阵压缩存储到一维数组A中,则数组A的长度最少为()。

(A) 100 (B) 40 (C) 55 (D) 808.设结点A有3个兄弟结点且结点B为结点A的双亲结点,则结点B的度数数为()。

(A) 3 (B) 4 (C) 5 (D) 19.根据二叉树的定义可知二叉树共有()种不同的形态。

(A) 4 (B) 5 (C) 6 (D) 710.设有以下四种排序方法,则()的空间复杂度最大。

(A) 冒泡排序(B) 快速排序(C) 堆排序(D) 希尔排序二、填空题(30分)1.设顺序循环队列Q[0:m-1]的队头指针和队尾指针分别为F和R,其中队头指针F指向当前队头元素的前一个位置,队尾指针R指向当前队尾元素所在的位置,则出队列的语句为F =____________;。

数据结构模拟试题答案

数据结构模拟试题答案

《数据结构》模拟试题一、单项选择题(30分)1 .在数据结构的讨论中把数据结构从逻辑上分为 ____ J 。

A.内部结构与外部结构B.静态结构与动态结构C.线性结构与非线性结构D.紧凑结构与非紧凑结构。

2 .算法分析的两个主要方面是―DA.正确性和简明性B.可读性和文档性C.数据复杂性和程序复杂性D.空间复杂性和时间复杂性 3 .在存储数据时,通常不仅要存储各数据元素的值,而且还要存储 B 。

A.数据的处理方法B.数据元素的类型C.数据元素之间的关系D.数据的存储方法4 .设顺序表有9个元素,则在第3个元素前插入一个元素所需移动元素的个数为cA.5B.6C.7D.95 .线性表采用链式存储结构时,要求内存中可用存储单元的地址—d _。

A.必须是连续的B.必须是部分连续的C. 一定是不连续的D.连续和不连续都可以6 .对具有n 个结点的线性表进行插入和删除操作,所需的算法时间复杂度为―dA. O(1)B. O(n)C. O(nlog 2n)D. O(n 2)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->nextD. p->next=s->next; p->next=s;8 .栈中元素的进出原则是■—bA.先进先出B.先进后出C.栈空则进D.栈满则出 9 .长度是n 的顺序循环队列,front 和rear 分别指示队首和队尾,判断队列为满队列的条件是_dB. front=0 10 .下面说法不正确的是 ___ c. A.广义表的表头总是一个广义表 B.广义表的表尾总是一个广义表C.广义表难以用顺序存储结构D.广义表可以是一个多层次的结构 A. rear=0C. rear==frontD. (rear+1) %n==front11.已知二叉树的先序遍历序列为ABCD,中序遍历序列为BCDA,则后序遍历序列为—d—。

《数据结构》期末模拟试卷及参考答案【十套】

《数据结构》期末模拟试卷及参考答案【十套】

《数据结构》模拟试卷及参考答案模拟试卷一一、单选题(每题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.14B.5C.6D.85.由权值分别为3,8,6,2的叶子生成一棵哈夫曼树,它的带权路径长度为( )。

以下6-8题基于图1。

6.该二叉树结点的前序遍历的序列为( )。

A.E、G、F、A、C、D、BB.E、A、G、C、F、B、DC.E、A、C、B、D、G、FD.E、G、A、C、D、F、B7.该二叉树结点的中序遍历的序列为( )。

A. A、B、C、D、E、G、FB. E、A、G、C、F、B、DC. E、A、C、B、D、G、FE.B、D、C、A、F、G、E8.该二叉树的按层遍历的序列为( )。

A.E、G、F、A、C、D、B B. E、A、C、B、D、G、FC. E、A、G、C、F、B、DD. E、G、A、C、D、F、B9.下面关于图的存储的叙述中正确的是( )。

A.用邻接表法存储图,占用的存储空间大小只与图中边数有关,而与结点个数无关B.用邻接表法存储图,占用的存储空间大小与图中边数和结点个数都有关C. 用邻接矩阵法存储图,占用的存储空间大小与图中结点个数和边数都有关D.用邻接矩阵法存储图,占用的存储空间大小只与图中边数有关,而与结点个数无关10.设有关键码序列(q,g,m,z,a,n,p,x,h),下面哪一个序列是从上述序列出发建堆的结果?( )A. a,g,h,m,n,p,q,x,zB. a,g,m,h,q,n,p,x,zC. g,m,q,a,n,p,x,h,zD. h,g,m,p,a,n,q,x,z二、填空题(每空1分,共26分)1.数据的物理结构被分为_________、________、__________和___________四种。

2023年数据结构模拟考试及答案

2023年数据结构模拟考试及答案

数据结构模拟考试(总分100分,考试时长90分钟)一、单项选择题(每小题2 分,共 100分)1、一棵具有 n 个结点的完全二叉树的树高度(深度)是( A )A、「log2n」+1B、log2n+1C、「log2n」D、log2n-12、若长度为n的线性表采用顺序存储结构,在其第i个位置插入一个新元素的算法的时间复杂度为A、O(n)B、O(0)C、O(1)D、O(n^2)3、一个顺序栈S,空栈时top的初始值为0,其栈顶指针为top,则将元素e入栈的操作是( )。

A、*S->top=e;S->top++;B、S->top++;*S->top=e;C、*S->top=eD、S->top=e;4、下列几种排序方法中要求辅助空间最大的是( )A、堆排序B、直接选择排序C、归并排序D、快速排序5、给定排序码值序列为{F,B,J,C,E,A,I,D,C,H},对其按字母的字典序列的次序进行排列,冒泡排序(大数下沉)的第一趟排序结果应为A、{B,F,C,J,A,E,D,I,C,H}B、{C,B,D,A,E,F,I,C,J,H}C、{B,F,C,E,A,I,D,C,H,J}D、{A,B,D,C,E,F,I,J,C,H}6、对含有 10 个数据元素的有序查找表执行折半查找,当查找失败时,至少需要比较( )次。

A、2B、3C、4D、57、数组Q[n]用来表示一个循环队列,f为当前队列头元素的前一位置,r为队尾元素的位置,假定队列中元素的个数小于n,计算队列中元素个数的公式为()。

A、r-fB、(n+f-r)%nC、n+r-fD、(n+r-f)%n8、若长度为 n 的线性表采用顺序存储结构,访问其第 i 个元素的算法时间复杂度为()A、0 ( 1 )B、0 ( n )C、0 ( n2 )D、0 ( log2n )9、(6分)若希望1000个无序元素中尽快求得前10个最大元素,应借用(A)。

数据结构模拟试题及答案

数据结构模拟试题及答案

数据结构模拟试题一一、判断题(每小题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的有序表时,排序码的比较次数至少是___次,至多是___次。

数据结构模考试题及答案

数据结构模考试题及答案

数据结构模考试题及答案一、单选题(共100题,每题1分,共100分)1、下面关于生成树的描述中,不正确的是( )A、生成树是树的一种表现形式B、生成树一定是连通的C、生成树一定不含有环D、若生成树顶点个数为n,则其边数一定为n-1正确答案:A2、用邻接表表示图进行广度优先遍历时,通常是采用()来实现算法的。

A、图B、栈C、队列D、树正确答案:C3、下列四种基本的逻辑结构中,结构结点间不存在任何逻辑联系的是()A、集合B、树形结构C、图形结构D、线性结构正确答案:A4、以下数据结构中,哪一个是线性结构()。

A、线索二叉树B、二叉树C、有向图D、串正确答案:D5、n个顶点的连通图至少中含有( )边。

A、n-1B、n+1C、nD、0正确答案:A6、G是一个非连通无向图,共有28条边,则该图至少有( )个顶点。

A、7B、8C、6D、9正确答案:D7、在一个链队列中,假定front和rear分别为队首和队尾指针,则删除一个结点的操作为()。

A、rear=front->nextB、front=rear->nextC、front=front->nextD、rear=rear->next正确答案:C8、一个栈的输入序列是 1 2 3 4 5,则下列序列中是栈的输出序列的是()。

A、1,4,2,5,3B、3,1,2,4,5C、2,3,4,1,5D、5,4,1,3,2正确答案:C9、假设以数组A[m]存放循环队列的元素。

已知队列的长度为length,指针rear指向队尾元素的下一个存储位置,则队头元素所在的存储位置为( )A、(rear-length+m+1)%mB、(rear-length+m)%mC、(rear-length+m-1)%mD、(rear-length)%m正确答案:B10、与数据元素本身的形式、内容、相对位置、个数无关的是数据的()。

A、存储结构B、操作C、逻辑结构D、算法正确答案:C11、深度为k的完全二叉树中最少有()个结点。

数据结构考试试题及答案

数据结构考试试题及答案

数据结构考试试题及答案一、选择题(每题2分,共20分)1. 在数据结构中,线性表的顺序存储结构通常使用什么类型的数据结构来实现?A. 栈B. 队列C. 数组D. 链表答案:C2. 下列选项中,哪一个不是二叉树的性质?A. 任意节点的左子树和右子树的深度可能不同B. 任意节点的左子树和右子树的深度相同C. 任意节点的左子树和右子树的节点数可能不同D. 任意节点的左子树和右子树的节点数相同答案:B3. 哈希表的冲突解决方法不包括以下哪种?A. 开放定址法B. 链地址法C. 线性探测法D. 排序法答案:D4. 以下哪种排序算法的时间复杂度最低?A. 冒泡排序B. 快速排序C. 插入排序D. 归并排序答案:B5. 在图的遍历算法中,深度优先搜索(DFS)使用的栈是:A. 系统栈B. 显式栈C. 隐式栈D. 以上都不是答案:B6. 以下哪种数据结构可以有效地实现稀疏矩阵的存储?A. 顺序存储B. 链表C. 散列D. 邻接矩阵答案:C7. 在二叉搜索树中,插入一个新节点后,树的平衡因子可能为:A. -2B. 0C. 2D. 3答案:A8. 堆数据结构中,父节点的值总是大于其子节点的值,这种堆被称为:A. 最小堆B. 最大堆C. 完全二叉树D. 满二叉树答案:B9. 以下哪个算法不是动态查找表的算法?A. 直接查找B. 二分查找C. 斐波那契查找D. 哈希查找答案:A10. 在图的遍历算法中,广度优先搜索(BFS)使用的栈是:A. 系统栈B. 显式栈C. 隐式栈D. 以上都不是答案:C二、填空题(每题2分,共20分)1. 在数据结构中,栈是一种______结构,遵循后进先出(LIFO)的原则。

答案:线性2. 一个具有n个顶点的无向图的边数最多为______。

答案:n*(n-1)/23. 快速排序算法的时间复杂度在最坏情况下为______。

答案:O(n^2)4. 在哈希表中,如果一个关键字的哈希地址已经被占用,则需要进行______。

数据结构的试题及答案

数据结构的试题及答案

数据结构的试题及答案一、选择题(每题2分,共10分)1. 在数据结构中,()是数据元素之间的相互关系的集合。

A. 数据B. 结构C. 存储结构D. 逻辑结构答案:D2. 线性表的顺序存储结构中,存储元素的物理位置是()。

A. 连续的B. 离散的C. 任意的D. 无关的答案:A3. 在二叉树的遍历方法中,先访问根节点,然后遍历左子树,最后遍历右子树的遍历方式是()。

A. 前序遍历B. 中序遍历C. 后序遍历D. 层序遍历答案:A4. 哈希表的冲突解决方法中,()是将所有发生冲突的元素存储在同一个链表中。

A. 线性探测B. 链地址法C. 再散列D. 双散列答案:B5. 在图的遍历算法中,深度优先搜索(DFS)算法使用的辅助数据结构是()。

A. 栈B. 队列C. 链表D. 数组答案:A二、填空题(每题2分,共10分)1. 在数据结构中,算法的时间复杂度通常用()表示。

答案:O(n)2. 一个栈的初始状态为空,依次执行了Push(1), Push(2), Pop(), Push(3), Pop()操作后,栈顶元素是()。

答案:13. 在二叉搜索树中,对于任意节点,其左子树中的所有值都()该节点的值。

答案:小于4. 哈希表的装载因子是表中已填入的元素个数与哈希表的()之比。

答案:总容量5. 图的邻接矩阵表示法中,如果两个顶点之间有边相连,则对应的矩阵元素值为()。

答案:1三、简答题(每题5分,共20分)1. 请简述什么是递归,并给出一个递归算法的例子。

答案:递归是一种算法设计技巧,它允许一个函数直接或间接地调用自身。

递归算法的例子是计算阶乘:n! = n * (n-1)!,其中n! = 1当n=0时。

2. 请解释什么是堆排序,并简述其基本步骤。

答案:堆排序是一种基于堆数据结构的比较排序算法。

基本步骤包括构建最大堆,然后重复移除堆顶元素并调整剩余元素以保持最大堆属性。

3. 请描述什么是图的广度优先搜索(BFS)算法,并给出其算法步骤。

数据结构与算法分析模拟试题及答案

数据结构与算法分析模拟试题及答案

数据结构与算法分析模拟试题及答案一、选择题1. 下列哪种数据结构是先进先出(FIFO)的?A. 栈B. 队列C. 树D. 图答案:B2. 在排序算法中,哪一种算法的时间复杂度最低?A. 冒泡排序B. 快速排序C. 插入排序D. 堆排序答案:D3. 下列哪种算法不属于贪心算法?A. 背包问题B. 最短路径问题C. 活动选择问题D. 最小生成树问题答案:C4. 在二叉树中,下列哪种遍历方式是先访问左子树,再访问右子树?A. 前序遍历B. 中序遍历C. 后序遍历D. 层序遍历答案:C二、填空题1. 在链表中,每个节点包含两个域:数据域和______域。

答案:指针2. 在二分查找法中,每次比较的中间元素的下标为______。

答案:(low + high) / 23. 快速排序算法的时间复杂度为______。

答案:O(nlogn)4. 最小生成树算法中,普里姆(Prim)算法和克鲁斯卡尔(Kruskal)算法的时间复杂度分别为______和______。

答案:O(n^2),O(elogn)三、判断题1. 线性表是一种随机存取的数据结构。

()答案:正确2. 在二叉树中,每个节点的度都不超过2。

()答案:正确3. 贪心算法在每一步都选择当前最优解,一定能得到全局最优解。

()答案:错误4. 在排序算法中,冒泡排序算法的时间复杂度最低。

()答案:错误四、简答题1. 请简述快速排序算法的基本思想。

答案:快速排序的基本思想是分治法。

首先选取一个基准元素,将比基准元素小的元素放在其左边,比基准元素大的元素放在其右边。

然后递归地对左右两边的子数组进行快速排序。

2. 请简述二分查找法的基本思想。

答案:二分查找法的基本思想是折半查找。

首先确定待查找区间,然后计算中间元素的下标。

若中间元素等于目标值,则查找成功;若中间元素小于目标值,则在左半区间继续查找;若中间元素大于目标值,则在右半区间继续查找。

重复以上过程,直到查找成功或区间为空。

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

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

数据结构模拟试题(含答案)一、单选题(共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中()。

数据结构模拟试题附答案

数据结构模拟试题附答案

数据结构试卷(1)一、选择题(30分)1.设一组权值集合W={2,3,4,5,6},则由该权值集合构造的哈夫曼树中带权路径长度之和为()。

(A) 20 (B) 30 (C) 40 (D) 452.执行一趟快速排序能够得到的序列是()。

(A) [41,12,34,45,27] 55 [72,63](B) [45,34,12,41] 55 [72,63,27](C) [63,12,34,45,27] 55 [41,72](D) [12,27,45,41] 55 [34,63,72]3.设一条单链表的头指针变量为head且该链表没有头结点,则其判空条件是()。

(A) head==0 (B) head->next==0(C) head->next==head (D) head!=04.时间复杂度不受数据初始状态影响而恒为O(nlog2n)的是()。

(A) 堆排序(B) 冒泡排序(C) 希尔排序(D) 快速排序5.设二叉树的先序遍历序列和后序遍历序列正好相反,则该二叉树满足的条件是()。

(A) 空或只有一个结点(B) 高度等于其结点数(C) 任一结点无左孩子(D) 任一结点无右孩子6.一趟排序结束后不一定能够选出一个元素放在其最终位置上的是()。

(A) 堆排序(B) 冒泡排序(C) 快速排序(D) 希尔排序7.设某棵三叉树中有40个结点,则该三叉树的最小高度为()。

(A) 3 (B) 4 (C) 5 (D) 68.顺序查找不论在顺序线性表中还是在链式线性表中的时间复杂度为()。

(A) O(n) (B) O(n2) (C) O(n1/2) (D) O(1og2n)9.二路归并排序的时间复杂度为()。

(A) O(n) (B) O(n2) (C) O(nlog2n) (D) O(1og2n)10. 深度为k的完全二叉树中最少有()个结点。

(A) 2k-1-1 (B) 2k-1(C) 2k-1+1 (D) 2k-111.设指针变量front表示链式队列的队头指针,指针变量rear表示链式队列的队尾指针,指针变量s指向将要入队列的结点X,则入队列的操作序列为()。

数据结构试题及答案(十套)

数据结构试题及答案(十套)

数据结构试题及答案(十套)数据结构试题及答案(十套)一、选择题1. 数据结构是指()。

A. 存储数据的方式B. 数据的逻辑结构和物理结构C. 数据的存储结构和存储方式D. 数据的逻辑结构、存储结构和存储方式答案:D2. 在数据结构中,线性表的存储方式包括()。

A. 顺序存储和链式存储B. 数组存储和链表存储C. 顺序存储、链表存储和索引存储D. 顺序存储、链表存储和树形存储答案:A3. 栈是一种()的数据结构。

A. 先进先出B. 先进后出C. 后进先出D. 后进后出答案:C4. 队列是一种()的数据结构。

A. 先进先出B. 先进后出C. 后进先出D. 后进后出答案:A5. 二叉树中,度为0的节点称为()。

A. 叶子节点B. 根节点C. 中间节点D. 子节点答案:A6. 以下哪个排序算法是稳定的?A. 快速排序B. 选择排序C. 插入排序D. 希尔排序答案:C7. 图中表示顶点之间关系的边的数量称为()。

A. 顶点度数B. 边数C. 路径数D. 网络答案:B8. 哈希表通过()来实现高效的查找操作。

A. 散列函数B. 排序算法C. 遍历操作D. 顺序存储答案:A9. 平衡二叉树是一种具有左右子树高度差不超过()的二叉树。

A. 0B. 1C. 2D. 3答案:B10. 在链表中,删除节点的操作时间复杂度是()。

A. O(1)B. O(logn)C. O(n)D. O(nlogn)答案:A二、填空题1. 在顺序存储结构中,元素之间的逻辑关系由()表示。

答案:下标2. 二叉查找树的中序遍历结果是一个()序列。

答案:递增3. 哈希表通过散列函数将关键字映射到()上。

答案:地址4. 图的邻接表中,每个顶点的所有邻接点链接成一个()。

答案:链表5. 位运算符中的左移和右移运算都是对二进制数进行()操作。

答案:移位三、解答题1. 简要介绍顺序存储和链式存储这两种线性表的存储方式,并比较它们的优缺点。

答案:顺序存储是将元素按照逻辑顺序依次存储在一块连续的存储空间中,通过元素的下标可以直接访问到元素。

《数据结构》全真模拟试题与解答

《数据结构》全真模拟试题与解答

全真模拟试题一、单项选择题(在每个小题的4个备选答案中,选出正确的答案,并将其号码填在题后的括号内。

每小题2分,共24分)1.一个具有n个顶点的无向完全图的边数为()①n(n+1)/2 ②n(n-1)/2 ③n(n-1) ④n(n+1)2.在索引顺序表中查找一个元素,可用的且最快的方法是()①用顺序查找法确定元素所在块,再用顺序查找法在相应块中查找②用顺序查找法确定元素所在块,再用二分查找法在相应块中查找③用二分查找法确定元素所在块,再用顺序查找法在相应块中查找④用二分查找法确定元素所在块,再用二分查找法在相应块中查找3.若某线性表中最常用的操作是在最后一个元素之后插入一个元素和删除最后一个元素,则采用()存储方式最节省运算时间。

①单链表②双链表③带头结点的双循环链表④容量足够大的顺序表4.串是()①一些符号构成的序列②有限个字母构成的序列③一个以上的字符构成的序列④有限个字符构成的序列5.堆排序在最坏情况下,其时间复杂性为()①O(nlog2n) ②O(n2)③O(log2n2) ④O(log2n)6.快速排序的记录移动次数()比较次数,其总执行时间为O(nlog2n)。

①大于②大于等于③小于等于④小于7.一棵二叉树有n个结点,要按某顺序对该二叉树中的结点编号,(号码为1-n),编号须具有如下性质:二叉树中任一结点V,其编号等于其左子树中结点的最大编号加1。

而其右子树中结点的最小编号等于V的编号加1。

试问应按()遍历顺序编号。

①前根②中根③后根④层次8.3个结点可构成()个不同形态的二叉树。

① 2 ②3 ③4 ④59.对有n个记录的有序表采用二分查找,其平均查找长度的量级为()①O(log2n) ②O(nlog2n) ③O(n) ④O(n2)10.对有n个记录的表按记录键值有序的顺序建立二叉树,在这种情况下,其平均查找长度的量级为()①O(n) ②O(nlog2n) ③O(1) ④(log2n)11.栈操作的原则是()①先进先出②后进先出③栈顶插入④栈顶删除12.设矩阵A是一对称矩阵(a ij=a ji,1<=i,j<=8),若每个矩阵元素占3个单元,将其上三角部分(包括对角线)按行序为主序存放在数组B中,B的首地址为1000,则矩阵元素a67的地址为()①1031 ②1093 ③1096 ④1032二、判断题(判断下列各题是否正确,正确在括号内打“√”,错的打“×”。

十套数据结构试题及答案

十套数据结构试题及答案

数据构造试卷〔一〕一、单项选择题〔每题 2 分,共20分〕1.栈和队列的共同特点是( a )。

A.只允许在端点处插入和删除元素B.都是先进后出C.都是先进先出D.没有共同点2.用链接方式存储的队列,在进展插入运算时( d ).A. 仅修改头指针B. 头、尾指针都要修改C. 仅修改尾指针D.头、尾指针可能都要修改3.以下数据构造中哪一个是非线性构造?( d )A. 队列B. 栈C. 线性表D. 二叉树4.设有一个二维数组A[m][n],假设A[0][0]存放位置在644(10),A[2][2]存放位置在676(10),每个元素占一个空间,问A[3][3](10)存放在什么位置?脚注(10)表示用10进制表示。

cA.688 B.678 C.692 D.6965.树最适合用来表示( c )。

A.有序数据元素B.无序数据元素C.元素之间具有分支层次关系的数据D.元素之间无联系的数据6.二叉树的第k层的结点数最多为( d ).A.2k-1 B.2K+1 C.2K-1 D. 2k-17.假设有18个元素的有序表存放在一维数组A[19]中,第一个元素放A[1]中,现进展二分查找,那么查找A[3]的比拟序列的下标依次为( c d)A. 1,2,3B. 9,5,2,3C. 9,5,3D. 9,4,2,38.对n个记录的文件进展快速排序,所需要的辅助存储空间大致为 cA. O〔1〕B. O〔n〕C. O〔1og2n〕D. O〔n2〕9.对于线性表〔7,34,55,25,64,46,20,10〕进展散列存储时,假设选用H〔K〕=K %9作为散列函数,那么散列地址为1的元素有〔 c d〕个,A.1 B.2 C.3 D.410.设有6个结点的无向图,该图至少应有( a )条边才能确保是一个连通图。

二、填空题〔每空1分,共26分〕1.通常从四个方面评价算法的质量:____时间正确性_____、____占用内存_易读性____、____复杂度__强壮性___和_____准确度_ 高效率___。

数据结构模拟题

数据结构模拟题

《数据结构》模拟题一、填空题1、循环单链表可作线性表的存储结构.2、队列操作的原则是先进先出。

3、设计一个判定表达式中左,右括号是否配对出现的算法,采用栈数据结构醉佳.4、顺序栈存储空间的实现使用数组存储栈元素.5、数据项是数据的不可分割的醉小单位.6、线性表是醉常用且醉简单的一种数据结构,是n个数据元素的有限序列.7、广义表是由零或多个原子或子表所组成的有限序列。

8、树型结构是一类重要的非线性数据结构,树是以分支关系定义的层次结构.9、算法的时间复杂度是指算法中语句重复执行的次数的总和。

10、如果线性表醉常用的操作是存取第i个元素及其前驱的值,则采用顺序表方式存储节省时间.二、单项选择题1.线性表在(B)时,宜用顺序表作存储结构.A.经常作插入,删除B.经常随机存取C.无足够连续存储空间D.经常作动态查找2.一棵左右子树均不空的二叉树在先序线索化后,其空指针域数为( B )A.0B.1C.2D.不确定3.串的长度是( C ).A.串中不同字母的个数B.串中不同字符的个数C.串中所含字符的个数D.串中所含字符的个数,且大于04.链表不具有的特点是( A ).A.可随机访问任一元素B.插入删除不需要移动元素C.不必事先考虑存储空间D.所需空间与线性表长度成正比5.对长度为10的表作选择(简单选择)排序,共需比较( A )次关键字.A.45B.90C.10D.1106.关于线性表,下列说法正确的是( D ).A.每个元素都有一个直接前驱和直接后继B.线性表中至少要有2个元素C.表中元素必须排序D.除第yi个和醉后一个元素外,其余每个元素都有一个且仅有一个直接前驱和直接后继7.设栈的输入序列是(1,2,3,4),则( C )不可能是其出栈序列.A.1234B.2134C.4312D.32148.两个串相等的判定条件是( D ).A.串为空B.串中各位置对应字符相等C.串长度相等D.串长度相等并且串中各位置对应字符相等9.若7行6列的数组a以列序为主序顺序存储,基地址为1024,每个元素占2个存储单元,则第3行第5列的元素(假定无第0行第0列)的存储地址是( C )A.1100B.1086C.1084D.以上都不对10.若进队列的序列为1,2,3,4,则( A )是一个出队列序列.A.1234B.4321C.4312D.321411.若用一个大小为6的数组来实现循环队列,且当rear和front的值分别为0和3.当从队列中删除一个元素,再加入两个元素后,rear和front的值分别为( B ).A.1和5B.2和4C.4和2D.5和112.树醉适合用来表示( C ).A.有序数据元素B.无序数据元素C.元素之间具有分支层次关系的数据D.元素之间无联系的数据13.设语句s=s+i的时间是时间单位,则语句:s=0;for(i=1;i<=n;i++)s=s+i;的时间复杂度为( B ).A.O(1)B.O(n)C.O(n2)D.O(log2n)14.数据表A中有10000个元素,如果仅要求求出其中醉大的10个元素,则采用( C )排序算法醉节省时间.A.堆排序B.希尔排序C.快速排序D.直接选择排序15.数组A中,每个元素的长度为3个字节,行下标i从1到5,列下标j从1到4,从首地址SA开始连续存放在存储器内,该数组占用的字节数为( B ).A.20B.60C.80D.12016.二叉树在线索化后,仍不能有效求解的问题是( D )A.先序线索二叉树中求先序后继B.中序线索二叉树中求中序后继C.中序线索二叉树中求中序前趋D.后序线索二叉树中求后序后继17.为了方便对图状结构的数据进行存取操作,则其中数据存储结构宜采用( B ).A.顺序存储B.链式存储C.索引存储D.散列存储18.下列有关二叉树的说法正确的是( B ).A.二叉树的度为2B.一棵二叉树度可以小于2C.二叉树中至少有一个结点的度为2D.都不对19.循环队列中元素数目是( C )?其中tail=32,指向队尾元素,head=15指向对头元素的前一个空位置,队列空间m=60.A.42B.16C.17D.4120.一颗非空的二叉树的先序遍历序列与后序遍历序列正好相反,则该二叉树一定满足( A ).A.只有一个叶子结点B.所有的结点均无左孩子C.左右的结点均无右孩子D.是任意一颗二叉树21.线性表的静态链表存储结构与顺序存储结构相比优点是( B )A.便于随机存取B.便于插入和删除C.便于利用零散的存储器空间D.所有的操作算法实现简单22.若用单链表来表示队列,则应该选用( D ).A.带头指针的非循环链表B.带尾指针的非循环链表C.带头指针的循环链表D.带尾指针的循环链表23.串是任意有限个( D ).A.符号构成的xxxB.符号构成的序列C.字符构成的xxxD.字符构成的序列24.下列排序算法中,某一趟结束后未必能选出一个元素放在其醉终位置上的是( D )A.堆排序B.冒泡排序C.快速排序D.直接插入排序25.已知一颗二叉树的后序遍历序列为DABEC,中序遍历序列为DEBAC,则它的先序遍历序列为( D ).A.ACBEDB.DECABC.DEABCD.CEDBA26.广义表A=(a,b,(c,d),(e,(f,g))),则下面式子的值为( D ).Head(Tail(Head(Tail(Tail(A))))).A.(g)B.(d)C.cD.d27.将一个A[1..10,1..10]的三对角矩阵,按行优先存入一维数组B[1,30]中,A中元素a6,5在B数组中的位置i为( A ).A.15B.16C.55D.5628.两个指针p和q,分别指向单链表的两个元素,p所指元素是q所指元素的前驱,则( D ).A.p==qB.q->next=pC.p->next=q->nextD.p->next=q29.若串s="hello",其子串个数是( B ).A.5B.15C.16D.2530.若某链表醉常用的操作是在醉后一个结点之后插入一个结点和删除醉后一个结点,则采用( C )存储方式醉节省时间.A.单链表B.双链表C.带头结点的双循环链表D.单循环链表31.若长度为n的线性表采用顺序存储结构,在其第i个位置插入一个新元素算法的时间复杂度为( B ).A.O(1)B.O(n)C.O(n2)D.O(log2n)32.设循环队列中数组的下标范围是1~n,其头尾指针分别为f和r,则其元素个数为( D )A.r-fB.r-f+1C.(r-f)modn+1D.(r-f+n)modn33.对有18个元素的有序表作二分(折半)查找,则查找A[3]的比较序列的下标为( D ).A.1,2,3B.9,5,2,3C.9,5,3D.9,4,2,334.数据结构包含四种基本结构,它们是( C ).A.xxx,链表,树,队列B.队列,链表,数组,图C.xxx,线性,树,图D.线性,链表,队列,xxx35.数组A中,每个元素的长度为4个字节,行下标i从1到5,列下标j从1到4,从首地址SA开始连续存放在存储器内,该数组按行存放时,元素A[3][2]的起始地址为( C ).A.SA+5B.SA+10C.SA+36D.SA+4036.算法必须具备的5个特征是:输入,输出,( B ).A.可执行性,可移植性和可扩充性B.可执行性,有穷性和确定性C.有穷性,稳定性和确定性D.稳定性,易读性和确定性37.稀疏矩阵一般的压缩存储方法有( D )两种.A.二维数组和三维数组B.二维数组和三元组C.三维数组和十字链表D.三元组和十字链表38.线性表采用链式存储时,其地址( C ).A.必须是连续的B.一定是不连续的C.连续与否均可以D.部分地址必须是连续的39.一个n*n的对称矩阵,如果以行或列为主序放入内存,则其容量为( C ).A.n*nB.n*n/2C.n*(n+1)/2D.(n+1)*(n+1)/240.已知一个顺序存储的线性表,设每个结点需占m个存储单元,若第yi个结点的地址为d1,则第i个结点的地址为( A ).A.d1+(i-1)*mB.d1+i*mC.d1-i*mD.d1+(i+1)m三、判断题1.在二叉排序树上删除一个结点时,不必移动其他结点,只要将该结点的父结点的相应指针域置空即可.(错)2.从具有n个结点的二叉排序树中查找一个元素时,醉坏情况下的时间复杂度为O(n).(对)3.广义表中原子个数即为广义表的长度(错)4.空栈就是所有元素都为0的栈.(错)5.栈和队列都是限制存取点的线性结构(对)6.数据元素是数据的醉小单位.(错)7.顺序存储结构属于静态结构,链式结构属于动态结构.(对)8.线性表采用链表存储时,结点和结点内部的存储空间可以是不连续的.(错)9.有回路的图不能进行拓扑排序.(对)10.在所有结点的权都相等的情况下,具有平衡特性的二叉排序树一定是醉佳二叉排序树.(对)11.数据项是数据的基本单位.(错)12.广义表是线性表的推广,是一类线性数据结构.(错)13.哈希表的查找效率主要取决于哈希表造表时选取的哈希函数和处理冲突的方法.(对)14.邻接表只能用于存储有向图,而邻接矩阵则可存储有向图和无向图.(错)15.数据的物理结构是指数据在计算机内实际的存储形式.(对)16.顺序查找法适用于存储结构为顺序或链接存储的线性表.(对)17.完全二叉树中,若一个结点没有左孩子,则它必是树叶.(对)18.一个图的广度优先搜索树是唯一的.(错)19.在单链表中,要访问某个结点,只要知道该结点的指针即可;因此,单链表是一种随机存取结构.(错)20.在线性表的顺序存储结构中,插入和删除元素时,移动元素的个数与该元素的位置有关.(对)四、名词解释1.串[答案]:串是有零个或多个字符组成的优先序列.2.关键字[答案]:关键字是数据元素中某个数据项的值,用它可以标识一个数据元素或记录.3.数据项,记录和文件.[答案]:一个元素可以有若干个数据项组成,通常把数据元素称为记录,含有大量记录的线性表称为文件.4.内部排序方法[答案]:直接插入,折半插入,2-路插入,表插入,希尔排序,起泡排序,快速排序,选择排序,树形排序,堆排序,归并,基数.任选5个.5.队列[答案]:队列也是线性表,它是操作受限制的线性表,队列是先进先出表.6.图[答案]:图形结构中,结点之间的关系可以是任意的,图中任意两个数据元素之间都可能相关.7.数组[答案]:数组在内存中占据连续的存储单元,其数组元素具有相同的名字和类型.8.栈[答案]:栈也是线性表,它是操作受限制的线性表,栈是后进先出表.9.二叉树[答案]:二叉树的每个结点至多只有两棵子树,并且,二叉树的子树有左右之分,其次序不能任意颠倒.10.数据结构[答案]:数据结构是相互之间存在一种或多种特定关系的数据元素的xxx.。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

模拟试题1一、选择题(共10题,每题1分,共10分)1.下面关于线性表的叙述中,错误的是哪一个?()A.线性表采用顺序存储,必须占用一片连续的存储单元B.线性表采用顺序存储,便于进行插入和删除操作C.线性表采用链接存储,不必占用一片连续的存储单元D.线性表采用链接存储,便于插入和删除操作2.在一个单链表中,已知q所指结点是p所指结点的前驱,若在p和q之间插入s所指结点,则执行的操作是()。

A. s->next=p->next;p->next=s;B. q->next=s;s->next=p;C. p->next=s->next;s->next=p;D. p->next=s;s->next=q;3.设有三个元素X,Y,Z顺序进栈,下列得不到的出栈排列是( )。

A.XYZ B. YZX C. ZXY D. ZYX4.若用一个长度为6的数组来实现循环队列,且当前rear和front的值分别为0和3,则从队列中删除一个元素,再增加两个元素后,rear和front的值分别是( )。

A.1和5 B.2和4 C.4和2 D. 5和15.下列说法中正确的是()。

A.二叉树就是度为2的树 B.二叉树中不存在度大于2的结点C.二叉树中至少有一个结点的度为2 D.二叉树中任何一个结点的度都为2 6.在具有n个结点的二叉链表中,共有()个空指针。

A. nB. n-1C. n+1D. 不确定7.根据二叉树与树的转换关系可知,深度为h的满二叉树对应的森林由()棵树构成。

A.1 B.log2n C. h/2 D. h8.在一个无向图中,所有顶点的度数之和等于所有边数的()倍。

A.1/2 B.1 C. 2 D. 49.对17个元素的查找表做折半查找,则查找长度为5的元素下标依次是()。

A.8,17 B.5,10,12 C.9,16 D.9,1710.关于排序,下列说法中正确的是()。

A. 稳定的排序方法优于不稳定的排序方法,因为稳定的排序方法效率较高B. 在顺序表上实现的排序方法在链表上也可以实现C. 在链表上可以实现简单选择排序,但是难以实现堆排序D. 就平均性能而言,堆排序最佳二、填空题(共10空,每空2分,共20分)1.计算机执行下面的语句时,语句s的执行次数为 _______ 。

for(i=l;i<n-l;i++)for(j=n;j>=i;j--) s;2.队列是限制插入只能在表的一端,而删除在表的另一端进行的线性表,其特点是_______。

3.数组A[0..5,0..6]的每个元素占五个字节,将其按列优先次序存储在起始地址为1000的内存单元中,则元素A[5,5]的地址是_______ 。

4. 一棵有124个叶子结点的完全二叉树,最多有个_______结点。

5. N 个顶点的无向连通图若要存在回路,则至少需要__________条边。

6. 对于一棵二叉排序树做_______遍历,可以得到一个有序的序列。

7. 进行折半查找的两个先决条件是查找表中数据有序和__________。

8. 按{12,24,36,90,52,30}的顺序构成的平衡二叉树,其根结点是__________。

9. 时间复杂度为O (nlg 2n )且稳定的排序算法是__________排序。

10.快速排序在__________情况下会蜕变成为冒泡排序。

三、应用题(共5题,每题10分,共50分)1. 设一棵二叉树的先序遍历序列: A B D F C E G H 中序遍历序列: B F D A G E H C(1)画出这棵二叉树。

(2)将这棵二叉树转换成对应的树(或森林)。

2. 给定一组数列(15,8,10,21,6,19,3)分别代表字符A,B,C,D,E,F,G 出现的频度,画出Huffman 树,并给出各字符的Huffman 编码。

3.根据Prim 算法或Kruskal 算法,求右图的最小生成树。

136542192116566111418334.某一工程作业的网络图如右图所示,其中箭头表示作业,箭头边的数字表示完成作业所需的天数。

箭头前后的圆圈表示事件的编号。

求出所有事件开始的最早时间和最晚时间,并给出关键路径。

19 3 760 25 10 8 4 113 2 2 7 245 3 1 63 34 4 755.设哈希函数H (k )=3*K mod 11,散列地址空间为0~10,对关键字序列(32,13,49,24,38,21,4,12)按线性探测再散列的方法解决冲突,构造哈希表,并求出等概率下查找成功时的平均查找长度四、程序设计题(共2题,共20分)1. 设有两条带头结点单链表La 和Lb ,且表中的数据有序递增。

现要将两条单链表合并成为一条单链表Lc ,并使Lc 中的数据有序递减....。

试写算法来实现,并说明算法的时间复杂度。

2. 写算法判断两棵二叉树是否相似。

相似的条件是:要么它们都为空或者都只有一个根结点,要么它们的左右子树均相似。

试题参考答案选择题1-5 BACBB 6-10 CDCAC填空题1 (n+3)(n-2)/2 2 FIFO3 11754 2485 N-16 中序遍历7 顺序存储 8 369 归并排序 10 数据基本有序操作题1、3、2、wpl=512 1635484题图AEDCBHGF223ADADF1 32GAFD1 323BG FDA1234 DFACGBE1234 DFACGB13 3ABMFD(2)CEM HG4、略5、散列地址0 1 2 3 4 5 6 7 8 9 10 关键字 4 12 49 38 13 24 32 21比较次数 1 1 1 2 1 2 1 2ASL succ =(1+1+1+2+1+2+1+2)/8=11/8算法设计1 void Merge(LinkedList la,Linklist lb){ pa=La->next;pb=Lb->next;Lc =La;while(pa&&pb){if(pa->data<=pb->data){Lc->next=pa; Lc=pa;pa=pa->next;}else{Lc->next=pb; Lc=pb;pb=pb->next}}Lc->next=pa?pa:pb;free(Lb);}2 status sam(BiTree Ta, BiTree Tb) //判断相似{if(!Ta && !Tb) return OK;else{if ( Ta&&!Tb || !Ta&&Tb) return False;else { p=same(Ta->lchild,Tb->lchild);if(p) p= same(Ta->rchild,Tb->rchild);return p;}}//结束模拟试题2一、选择题(共10题,每题1分,共10分)1.下面关于线性表的叙述中,错误的是哪一个?()A.线性表采用顺序存储,必须占用一片连续的存储单元。

B.线性表采用顺序存储,便于进行插入和删除操作。

C.线性表采用链接存储,不必占用一片连续的存储单元。

D.线性表采用链接存储,便于插入和删除操作。

2.在双向链表指针p的结点前插入一个指针q的结点操作是()。

A. p->prior=q;q->next=p;p->prior->next=q;q->prior=q;B. p->prior=q;p->prior->next=q;q->next=p;q->prior=p->prior;C. q->next=p;q->prior=p->prior;p->prior->next=q;p->prior=q;D. q->prior=p->prior;q->next=q;p->prior=q;p->prior=q;3.设有三个元素X,Y,Z顺序进栈(进的过程中允许出栈),下列得不到的出栈排列是( )。

A.XYZ B. YZX C. ZXY D. ZYX4.递归过程或函数调用时,处理参数及返回地址,要用一种称为()的数据结构。

A.队列 B.多维数组 C.栈 D. 线性表5.循环队列存储在数组A中,数组长度为m,则入队时的操作为()。

A. rear=rear+1B. rear=(rear+1) % (m-1)C. rear=(rear+1) % mD. rear=(rear+1) % m6.数组A[0..5,0..6]的每个元素占五个字节,将其按列优先次序存储在起始地址为1000的内存单元中,则元素A[5,5]的地址是( )。

A. 1175B. 1180C. 1205D. 12107.有关二叉树下列说法正确的是()。

A.二叉树的度为2 B.一棵二叉树的度可以小于2 C.二叉树中至少有一个结点的度为2 D.二叉树中任何一个结点的度都为28.一棵非空的二叉树的先序遍历序列与中序遍历序列正好相同,则该二叉树一定满足()。

A.所有的结点均无左孩子 B.所有的结点均无右孩子C.只有一个叶子结点 D.是任意一棵二叉树9.n个结点的完全有向图含有弧的数目()。

A.n*n B.n(n+1) C.n/2 D.n*(n-l)10.对线性表进行二分查找时,要求线性表必须()。

A.以顺序方式存储B.以顺序方式存储,且数据元素有序C.以链接方式存储D.以链接方式存储,且数据元素有序二、填空题(共10空,每空2分,共20分)1.计算机执行下面的语句时,则其复杂时间度为O(_______)。

for(i=l;i<n-l;i++)for(j=n;j>=1;j--) s;2.栈的数据进出特点是_______。

3.在顺序表中做插入和删除操作,移动元素的个数大约等于表程长度的_________。

4.深度为5的完全二叉树,其结点至少有_______个,至多有_______个。

5.对一棵完全二叉树按照层次编号,编号为i(i>1)的结点的双亲结点的编号是_______。

6.对于一棵二叉排序树做_______遍历,可以得到一个有序的序列。

7.己知有序表为(12,18,24,35,47,50,62,83,90,115,134)当用二分法查找时,第二次查找即查找成功的数据是 __________ 或 __________ 。

8.归并排序算法的时间复杂度为 __________。

三、操作题(共5题,每题10分,共50分)1.设一棵二叉树的先序、中序遍历序列分别为,先序遍历序列: A B D F C E G H 中序遍历序列: B F D A G E H C,画出这棵二叉树。

相关文档
最新文档