数据结构应用题四种

合集下载

数据结构习题集第4章(2014更正)

数据结构习题集第4章(2014更正)

第4章树一、单项选择题:1.如下图4-1所示的4棵二叉树中,不是完全二叉树。

A. B. C. D.图4-1 4棵二叉树2.二叉树按某种顺序线索化后,任一结点均有指向其前驱和后续的线索,这种说法。

A.正确B.错误3.二叉树的先序遍历序列中,任意一个结点均处在其孩子结点的前面,这种说法。

A.正确B.错误4.由于二叉树中每个结点的度最大为2,所以二叉树是一种特殊的树,这种说法。

A.正确B.错误5.设高度为h的二叉树上只有度为0和度为2的结点,则此类二叉树中所包含的结点数至少为。

A.2hB.2h-1C.2h+1D.h+16.如果T2是由有序树T1转换而来的二叉树,那么T1中结点的先根遍历就是T2中结点的遍历。

A.先序B.中序C.后序D.层次序7.某二叉树的先序遍历序列和后序遍历序列正好相反,则该二叉树一定是。

A.空或只有一个结点B.完全二叉树C.二叉排序树D.高度等于其结点数8. 如下图4-2所示的T2是由森林T1转化而来的二叉树,那么森林T1有 个叶子结点。

A.4B.5C.6D.7图4-2 一棵二叉树9. 按照二叉树的定义,具有3个结点的二叉树有 种。

A.3 B.4 C.5 D.610. 在一非空二叉树的中序遍历序列中,根结点的右边 。

A. 只有右子树上的所有结点B.只有右子树上的部分结点C. 只有左子树上的部分结点D.只有左子树上的所有结点11. 任何一棵二叉树的叶子结点在先序、中序和后序遍历序列中的相对次序 。

A.不发生改变B.发生改变C.不能确定D.以上都不对12. 设n ,m 为一棵二叉树上的两个结点,在中序遍历时,n 在m 前的条件是 。

A.n 在m 右方B.n 是m 祖先C.n 在m 左方D.n 是m 子孙13. 线索二叉树是一种 结构。

A.逻辑B.逻辑和存储C.物理D.线性二、填空题:1. 有一棵树如下图4-3所示,回答下面的问题:(1)这棵树的根结点是 ;(2)这棵树的叶子结点是 ;(3)结点k3的度是;(4)这棵树的度为;(5)这棵树的深度是;(6)结点k3的孩子结点是;(7)结点k3的双亲结点是。

(精华版)国家开放大学电大《数据结构》网络课形考网考作业及答案

(精华版)国家开放大学电大《数据结构》网络课形考网考作业及答案

(精华版)国家开放大学电大《数据结构》网络课形考网考作业及答案(精华版)国家开放大学电大《数据结构》网络课形考网考作业及答案100%通过考试说明:2022年秋期电大把该网络课纳入到“国开平台”进行考核,该课程共有4个形考任务,针对该门课程,本人汇总了该科所有的题,形成一个完整的标准题库,并且以后会不断更新,对考生的复习、作业和考试起着非常重要的作用,会给您节省大量的时间。

做考题时,利用本文档中的查找工具,把考题中的关键字输到查找工具的查找内容框内,就可迅速查找到该题答案。

本文库还有其他网核及教学考一体化答案,敬请查看。

课程总成绩=形成性考核×50%+终结性考试×50%形考任务1一、单项选择题(每小题3分,共60分)题目1把数据存储到计算机中,并具体体现数据元素间的逻辑结构称为()。

选择一项: D.物理结构题目2下列说法中,不正确的是()。

选择一项: C.数据项可由若干个数据元素构成题目3一个存储结点存储一个()。

选择一项: C.数据元素题目4数据结构中,与所使用的计算机无关的是数据的()。

选择一项: C.逻辑结构题目5在线性表的顺序结构中,以下说法正确的是()。

选择一项: D.逻辑上相邻的元素在物理位置上也相邻题目6对链表,以下叙述中正确的是()。

选择一项: C.不能随机访问任一结点题目7下列的叙述中,不属于算法特性的是()。

选择一项: C.可读性题目8算法的时间复杂度与()有关。

选择一项: D.算法本身题目9设有一个长度为n的顺序表,要在第i个元素之前(也就是插入元素作为新表的第i个元素),插入一个元素,则移动元素个数为()。

选择一项: C.n-i+1题目10设有一个长度为n的顺序表,要删除第i个元素移动元素的个数为()。

选择一项: C.n-i题目11在一个单链表中,p、q分别指向表中两个相邻的结点,且q所指结点是p所指结点的直接后继,现要删除q所指结点,可用语句()。

选择一项: A.p->next=q->next题目12在一个单链表中p所指结点之后插入一个s所指的结点时,可执行()。

数据结构经典例题

数据结构经典例题

数据结构例题(及答案)项目一习题(答案)一选择题1. 算法的计算量的大小称为计算的(B )。

A( 效率 B. 复杂性 C. 现实性 D. 难度2.算法的时间复杂度取决于(C )A(问题的规模 B. 待处理数据的初态 C. A和B3(从逻辑上可以把数据结构分为(C )两大类。

A(动态结构、静态结构 B(顺序结构、链式结构C(线性结构、非线性结构 D(初等结构、构造型结构4(连续存储设计时,存储单元的地址(A )。

A(一定连续 B(一定不连续 C(不一定连续 D(部分连续,部分不连续5. 以下属于逻辑结构的是(C )。

A(顺序表 B. 哈希表 C.有序表 D. 单链表二、判断题1. 数据元素是数据的最小单位。

(×)2. 记录是数据处理的最小单位。

(×)3. 数据的逻辑结构是指数据的各数据项之间的逻辑关系;(×)4(程序一定是算法。

(×)5. 在顺序存储结构中,有时也存储数据结构中元素之间的关系。

(×)6. 顺序存储方式的优点是存储密度大,且插入、删除运算效率高。

(×)7. 数据结构的基本操作的设置的最重要的准则是,实现应用程序与存储结构的独立。

(?)8. 数据的逻辑结构说明数据元素之间的顺序关系,它依赖于计算机的储存结构. (×)三、填空1(数据的物理结构包括数据元素的表示和数据元素间关系的表示。

2. 对于给定的n个元素,可以构造出的逻辑结构有集合,线性结构,树形结构,图状结构或网状结构四种。

3(数据的逻辑结构是指数据的组织形式,即数据元素之间逻辑关系的总体。

而逻辑关系是指数据元素之间的关联方式或称“邻接关系”。

4(一个数据结构在计算机中表示(又称映像) 称为存储结构。

5(抽象数据类型的定义仅取决于它的一组逻辑特性,而与在计算机内部如何表示和实现无关,即不论其内部结构如何变化,只要它的数学特性不变,都不影响其外部使用。

6(数据结构中评价算法的两个重要指标是算法的时间复杂度和空间复杂度。

算法与数据结构(应用题精华版)

算法与数据结构(应用题精华版)
算法与数据结构应用题精华版
1、设一棵二叉树的先序和中序遍历序列分别为 ABDFCEGH 和 BFDAGEHC。 (1)画出这棵二叉树。(6’) (2)将这棵二叉树转换成对应的森林。(6’)
2、设哈希函数 H(k)=3k%11,散列地址空间为 0~10,对关键字序列(32,13,49,24,38,21,4,12) 采用链地址法解决冲突,请构造出散列表,并求出等概率下查找成功时的平均查找长度 ASLsucc(12’)
数据结构标准答案
1、(1)二叉树如下图所示:
A
B
C
D
E
F
G
H
(2)对应的森林为:
A
C
B
D
E
H
F
G
0
1
4
2 12
3
4
49
38
5
6
13
24
7
8
32
21
9
10
(2) ASLsucc= 1 (11111 2 2 2) 11
8
8
3、答案不唯一
1 6
(1)
1 1
6
5
5
(2)
2 6
(3)
权路径长度 WPL。
5、已知一棵二叉树的中序遍历序列为 DGBAECHIF,后序遍历序列为 GDBEIHFCA。 (1)画出该二叉树;(6’) (2)画出该二叉树对应的森林。(6’)
6、已知散列表的地址空间为 A[0..11],散列函数 H (k) k%11,采用线性探查法处理冲
突。请将下列数据{25,16,38,47,79,82,51,39,89,151,231}依次插入到散列表中,并计算出 在等概率情况下查找成功时的平均查找长度。(12’)

数据结构考试试题题库

数据结构考试试题题库

数据结构考试试题题库一、选择题1. 在数据结构中,线性表是按照什么顺序存储数据的?A. 随机B. 无序C. 有序D. 连续2. 栈(Stack)是一种遵循哪种原则的数据结构?A. 先进先出(FIFO)B. 先进后出(LIFO)C. 后进先出(LILO)D. 随机访问3. 哈希表(Hash Table)的主要优点是什么?A. 存储空间大B. 访问速度快C. 易于排序D. 易于扩展二、简答题1. 请简述数组和链表的区别。

2. 什么是二叉树?请描述二叉树的几种遍历方法。

三、计算题1. 给定一个单链表,编写一个算法来删除链表中的重复元素。

2. 假设有一个数组,其中包含n个元素,编写一个算法来找到数组中的第k小的元素。

四、应用题1. 描述如何使用队列来实现一个打印任务调度系统。

2. 请解释二叉搜索树(BST)的插入操作,并给出相应的算法实现。

五、编程题1. 编写一个C++函数,实现对一个给定的整数数组进行排序。

2. 编写一个Python函数,实现对一个二叉树进行层次遍历。

六、论述题1. 讨论图的两种存储结构:邻接矩阵和邻接表,并比较它们的优缺点。

2. 解释什么是递归,并给出一个使用递归解决实际问题的例子。

结束语数据结构的学习不仅仅是对概念的理解,更重要的是能够将这些概念应用到实际问题的解决中。

通过本题库的练习,希望能够加深你对数据结构的理解和应用能力。

请注意,这只是一个示例题库,实际的考试题库可能会包含更多的题目和不同的题型。

考生应根据具体的课程内容和考试要求来准备。

数据结构应用题练习

数据结构应用题练习

数据结构应用题练习一、简介数据结构是计算机科学中的重要概念,是指数据组织、管理和存储的方式。

它是计算机处理和分析数据的基础,在各个领域都有广泛的应用。

本文将通过几个数据结构应用题的练习,展示数据结构在实际问题中的应用。

二、链表应用题链表是一种常见的数据结构,在许多场景中都有广泛的应用。

假设有一组学生的信息,包括学生姓名、年龄和成绩,请使用链表来存储并实现以下操作:1. 添加学生信息2. 删除学生信息3. 查找学生信息4. 修改学生信息三、栈应用题栈是一种后进先出(LIFO)的数据结构,在很多应用中都有不可或缺的地位。

以网页浏览器的前进和后退功能为例,使用栈可以很方便地实现该功能。

请描述如何使用栈来实现浏览器的前进和后退功能,并分析算法的时间复杂度。

四、队列应用题队列是一种先进先出(FIFO)的数据结构,常用于处理排队等场景。

现假设有一个任务队列,多个任务需要按照顺序执行。

请使用队列来存储任务,并实现以下操作:1. 添加任务到队列2. 从队列中取出并执行任务3. 判断队列是否为空4. 清空队列中的所有任务五、树应用题树是一种重要的非线性数据结构,在很多领域都有广泛应用。

假设有一组学生的信息,包括学生姓名、年龄和成绩,请使用树来存储这些信息,并实现以下操作:1. 添加学生信息到树中2. 从树中查找指定学生的信息3. 删除指定学生的信息4. 获取树中所有学生的平均成绩六、图应用题图是一种用于描述事物之间关系的数据结构,在网络分析、路径规划等领域有广泛应用。

假设有一张地图,其中包含若干城市和连接它们的道路,请使用图来存储地图信息,并实现以下操作:1. 添加城市和道路到图中2. 查找两个城市之间的最短路径3. 删除某个城市及其相关的道路4. 统计图中有多少个孤立的城市七、哈希表应用题哈希表是一种通过散列函数实现高效存储和查找的数据结构,在很多场景中都有广泛应用。

假设有一组学生的信息,包括学生姓名、年龄和成绩,请使用哈希表来存储这些信息,并实现以下操作:1. 添加学生信息到哈希表中2. 从哈希表中查找指定学生的信息3. 删除指定学生的信息4. 统计哈希表中学生信息的个数八、总结以上是几个常见的数据结构应用题的练习,通过这些练习可以更深入地理解数据结构的应用和算法的设计。

2024王导数据结构综合应用题

2024王导数据结构综合应用题

2024王导数据结构综合应用题假设2024年,王导是一位深受学生喜爱的计算机科学导师。

他设计了一道综合应用题,旨在考察学生对数据结构的应用能力。

以下是题目内容和解答。

题目:在2024年的某个国家,有许多城市需要进行道路规划。

每个城市可以通过道路连接到其他城市,形成一个网络。

现有一份城市之间的道路连接关系表,其中包含了城市之间可以直接通行的道路及其长度。

请设计一个算法,找到所有城市之间的最短路径及其长度。

解答:为了解决这个问题,我们可以使用图的最短路径算法。

以下是一种常用的算法——Dijkstra算法。

1. 创建一个集合S,用于存放已经找到最短路径的城市,初始时为空。

2. 创建一个数组dist,用于存放每个城市到起点的最短路径长度,初始时所有元素为无穷大。

3. 选取一个起点,设置dist[起点]为0,并将起点加入集合S。

4. 对于起点相邻的每个城市,更新其到起点的最短路径长度,并将其加入集合S。

5. 从剩余的城市中选取一个离起点最近的城市u,将它加入集合S。

6. 对于每个城市v,如果v不在集合S中且通过u可以找到更短的路径,则更新其最短路径长度,并将其加入集合S。

7. 重复步骤5和步骤6,直到所有城市都加入集合S。

使用Dijkstra算法可以找到起点到所有城市的最短路径及其长度。

在这里可以使用优先队列(最小堆)来存储城市和最短路径长度的对应关系,以提高算法效率。

接下来我们以一个具体的例子来说明算法的步骤。

假设有4个城市,用数字1、2、3、4代表,它们之间的道路如下:- 城市1和城市2之间有一条长度为5的道路。

- 城市1和城市3之间有一条长度为9的道路。

- 城市2和城市3之间有一条长度为2的道路。

- 城市2和城市4之间有一条长度为6的道路。

- 城市3和城市4之间有一条长度为3的道路。

现在我们以城市1为起点,按照Dijkstra算法的步骤来求解最短路径及其长度。

1. 初始化操作:- 集合S = {1},dist = [0, ∞, ∞, ∞],表示起点到各个城市的最短路径长度。

数据结构试题及答案

数据结构试题及答案

数据结构试题及答案一、选择题(每小题2分,共20分),每个题的备选答案中,只有一个是正确的,请将答案填写在试题的括号中。

1、对顺序存储的线性表,设其长度为20,在任何位置上插入或删除操作都是等概率的。

插入一个元素时平均要移动表中的()个元素。

A.10 B.9 C.11 D.122、若某线性表中最常用的操作是在最后一个元素之后插入一个元素和删除第一个元素,则采用()存储方式最节省运算时间。

A.单链表B.仅有头指针的单循环链表C.双链表D.仅有尾指针的单循环链表3、当利用大小为n的数组顺序存储一个栈时,假定用top==n表示栈空,则向这个栈插入一个元素时,首先应执行()语句修改top指针。

A.top++ B.top-- C.top = 0 D.top4、设入栈顺序为A,B,C,D,E,则出栈序列不可能是()。

A.EDCBA B.ABCDE C.ADEBC D.ABDEC5、已知关键字序列(46, 79, 56, 38, 40, 84),采用快速排序(以位于最左位置的关键字为基准)得到的第一次划分结果为:()A.{ 40, 38, 46, 56, 79, 84 } B.{ 38, 46, 79, 56, 40, 84 }C.{ 38, 46, 56, 79, 40, 84 } D.{ 40, 38, 46, 79, 56, 84 }6、一个有n个顶点和n条边的无向图一定是()。

A.不连通的B.连通的C.有环的D.无环的7、在一棵具有n个结点的二叉树的第i层上,最多具有()个结点。

A.2i B.2i-1 C.2i+1 D.2n8、对线性表采用折半查找法,该线性表必须()。

A.采用顺序存储结构B.采用顺序存储结构,且元素按值有序C.采用链式存储结构D.采用链式存储结构,且元素按值有序9、在一棵具有n个结点的完全二叉树中,分支结点的最大编号为()。

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

数据结构习题(题型版)

数据结构习题(题型版)

三、填空题1.数据的物理结构包括数据元素的表示和数据元素间关系的表示。

2. 对于给定的n 个元素,可以构造出的逻辑结构有线性结构、树形结构、图形结构、集合四种。

3.数据的逻辑结构是指数据的组织形式,即数据元素之间逻辑关系的总体。

而逻辑关系是指数据元素之间的关联方式或称“邻接关系”。

4.一个数据结构在计算机中表示(又称映像)称为存储结构。

5.抽象数据类型的定义仅取决于它的一组逻辑特性,而与在计算机内部如何表示和实现无关,即不论其内部结构如何变化,只要它的数学特性不变,都不影响其外部使用。

6.数据结构中评价算法的两个重要指标是时间复杂度和空间复杂度。

7. 数据结构是研讨数据的逻辑结构和物理结构,以及它们之间的相互关系,并对与这种结构定义相应的操作,设计出相应的算法。

8.一个算法具有5个特性: 有穷性、确定性、可行性,有零个或多个输入、有一个或多个输出。

11.下面程序段中带下划线的语句的执行次数的数量级是(log2n)i=1;WHILE i<n DO i=i*2;12. 下面程序段中带下划线的语句的执行次数的数量级是(nlog2n )。

i=1;while (i<n)for(i=1;i<=n;i++)x=x+1;i=i*2;15. 下面程序段的时间复杂度为O(n) 。

(n>1)su m=1;for (i=0;sum<n;i++) sum+=1;8.对于一个数据结构,一般包括哪三个方面的讨论?逻辑结构、存储结构、操作(运算)4.在一个长度为n 的顺序表中第i个元素(1<=i<=n)之前插入一个元素时,需向后移动n-i+1 个元素。

5.在单链表中设置头结点的作用是主要是使插入和删除等操作统一,在第一个元素之前插入元素和删除第一个结点不必另作判断。

另外,不论链表是否为空,链表指针不变。

10.链接存储的特点是利用指针来表示数据元素之间的逻辑关系。

11.顺序存储结构是通过物理上相邻表示元素之间的关系的;链式存储结构是通过指针表示元素之间的关系的。

数据结构网试题

数据结构网试题

数据结构试题第一章绪论一、选择题:1、在数据结构中,从逻辑上可以把数据结构分成()。

A、动态结构和静态结构B、紧凑结构和非紧凑结构C、线性结构和非线性结构D、内部结构和外部结构2、算法分析的两个主要方面是()。

A、空间复杂性和时间复杂性B、正确性和简明性C、可读性和文档性D、数据复杂性和程序复杂性3、以下与数据的存储结构无关的术语是()。

A、循环队列B、链表C、哈希表D、栈4、以下数据结构中,哪一个是线性结构()。

A.广义表B、二叉树C、稀疏矩阵D、串5、在下面的程序段中,对x的赋值语句的频度为()。

FOR i:=1TO n DOFOR j:=1TO n DOx:=x+1;n)A、O(2n)B、O(n)C、O(n2)D、O(log26、以下哪个数据结构不是多型数据类型()。

A、栈B、广义表C、有向图D、字符串7、以下数据结构中,()是非线性数据结构。

A、树B、字符串C、队D、栈8、以下属于逻辑结构的是()。

A、顺序表 B.哈希表C、有序表D、单链表9、下列程序段的时间复杂度为()。

s=0;for(i=1;i<n;i++)for(j=1;j<n;j++)s+=ij;A、O(1)B、O(n)C、O(2n)D、O(n2)10、数据结构是()。

A、一种数据类型B、相互之间存在一种或多种特定关系的数据元素的集合C、一组性质相同的数据元素的集合D、数据的存储结构11、算法分析的目的是()。

A、辨别数据结构的合理性B、评价算法的效率C、研究算法中输入与输出的关系D、鉴别算法的可读性12、下面程序段的时间复杂度为()。

for(int i=0;i<m;i++)for(int j=0;j<n;j++)a[i][j]=ij;A、O(m2)B、O(n2)C、O(mn)D、O(m+n)13、执行下面程序段时,执行S语句的次数为()。

for(int i=1;i<=n;i++)for(int j=1;j<=i;j++)S;A、n2B、n2/2C、n(n+1)D、n(n+1)/214、算法的可读性是指()。

数据结构试题四套

数据结构试题四套

A卷、选择(共20分每题只有一个正确答案每题2分)1.数据结构是( D )A.一种数据类型B.数据的存储结构C.一组性质相同的数据元素的集合D.相互之间存在一种或多种特定关系的数据元素的集合2.若进栈序列为1,2,3,4,5,6,且进栈和出栈可以穿插进行,则可能出现的出栈序列为( B )A.3,2,6,1,4,5 B.3,4,2,1,6,5C.1,2,5,3,4,6 D.5,6,4,2,3,13.求单链表中当前结点的后继和前驱的时间复杂度分别是( C )A.O(n)和O(1) B.O(1)和O(1)C.O(1)和O(n) D.O(n)和O(n)4.已知指针p和q分别指向某单链表中第一个结点和最后一个结点。

假设指针s指向另一个单链表中某个结点,则在s所指结点之后插入上述链表应执行的语句为(A )A.q->next=s->next;s->next=p; B.s->next=p;q->next=s->next;C.p->next=s->next;s->next=q; D.s->next=q;p->next=s->next;5.已知函数Sub(s,i,j)的功能是返回串s中从第i个字符起长度为j的子串,函数Scopy(s,t)的功能为复制串t到s。

若字符串S=″SCIENCESTUDY″,则调用函数Scopy(S,Sub(S,1,7))后得到( C) A.P=″SCIENCE″ B.P=″STUDY″C.S=″SCIENCE″ D.S=″STUDY″6.对N个元素的表做顺序查找时,若查找每个元素的概率相同,则平均查找长度为( A)A.(N+1)/2 B. N/2 C. N D. [(1+N)*N ]/27.下列陈述中正确的是( D)A.二叉树是度为2的有序树B.二叉树中结点只有一个孩子时无左右之分C.二叉树中必有度为2的结点D.二叉树中最多只有两棵子树,并且有左右之分8.设有一个10阶的对称矩阵A,采用下三角压缩存储方式,以行序为主存储,a11为第一元素,其存储地址为1,每个元素占一个地址空间,则a85的地址为(B )。

数据结构答案

数据结构答案

第一章一、选择题1 从逻辑上可以把数据结构分为( C)两大类。

A.动态结构、静态结构 B.顺序结构、链式结构C.线性结构、非线性结构 D.初等结构、构造型结构2在下面的程序段中,对x 的赋值语句的频度为(C)FOR i:=1 TO n DOFOR j:=1 TO n DOx:=x+1;A. O(2n) B.O(n) C.O(n2) D.O(log2n)3.连续存储设计时,存储单元的地址(A)。

A.一定连续 B.一定不连续 C.不一定连续 D.部分连续,部分不连续二、应用题1解释各组概念(1)数据结构、逻辑结构、存储结构◆数据结构:是指组成数据的元素之间的结构关系。

◆逻辑结构:是指抽象地反映数据元素之间的逻辑关系。

◆存储结构:是指数据在计算机的存储方式。

(2)算法的时间复杂性◆算法的时间复杂度:是对算法运行时间的近似估计,通常以基本语句的执行次数的数量级来描述。

(3)算法◆算法:就是一段程序,该程序段对给定的的输入可在有限的时间内产生出确定的输出结果。

2试给出下面两个算法的运算时间。

(1) for( i=1;i<=n;i++) x =x+1;O(n)(2) for( i=1;i<=n;i++){for( j=1;j<=n;i++) x= x+1;};O(n2)第二章线性表一、选择题1.下面关于线性表的叙述中,错误的是哪一个?(B)A.线性表采用顺序存储,必须占用一片连续的存储单元。

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

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

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

2.线性表是具有n 个(C)的有限序列(n>0)。

A.表元素 B.字符 C.数据元素 D.数据项 E.信息项3.若某线性表最常用的操作是存取任一指定序号的元素和在最后进行插入和删除运算,则利用(A)存储方式最节省时间。

A.顺序表 B.双链表 C.带头结点的双循环链表 D.单循环链表4.链表不具有的特点是(B)A.插入、删除不需要移动元素 B.可随机访问任一元素C.不必事先估计存储空间 D.所需空间与线性长度成正比5. 若长度为n 的线性表采用顺序存储结构,在其第i 个位置插入一个新元素的算法的时间复杂度为(C)(1<=i<=n+1)。

数据结构题库应用题上海杉达学院期末总复习题

数据结构题库应用题上海杉达学院期末总复习题

《数据结构》――应用题复习概要2020年7月1.写出执行下列程序段时,语句S的执行次数。

2.for (i=1; i<n; i++)3.for (j=n; j>=i; j--)4.S;5.假设n为2的乘幂,并且n>2,试求下列算法的时间复杂度及变量count的值(以n的函数形式表示)int Time(int n){ int count:=0; x:=2;while (x<n/2){ x:=2*x; count:=count +1 };return (count);}6.已知双向链表、指针P、Q所指的结点和结点的结构(数据域DATA、指针域LL及RL),分别画出经过下述算法后的双向链表。

(1)Q->RL = P->RL; P->RL = Q; Q->RL->LL = Q; Q->LL = P;(2)Q->RL = P; P->LL->RL = Q; Q->LL = P->LL; P->LL = Q;(3)P->LL->RL = P->RL; P->RL->LL = P->LL;7.设栈S的初始状态为空,元素a, b, c, d, e和f依次通过栈S,试分析下列各组出栈次序,每组所用的最大容量。

(1)a,b,c,d,e,f;(2)f,e,d,c,b,a;(3)b,d,c,f,e,a8.有字符串A+B*C-D,试写出利用栈操作将该字符串序列改为ABC*+D-的操作步骤,这里用X和S分别表示字符的进栈和出栈操作(例如把字符ABCD改为ACBD的操作步骤为XSXXSSXS)。

XSXXSXXSSSXXSS9.一棵二叉树的结点数采用顺序存储结构,存于下列数组T中,画出该二叉树。

b10.已知一棵树的双亲表示如下,其中各兄弟结点依此排列,试画出该树及对应的孩子兄弟表示的二叉树。

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15Data A B C D E F G H I J K L M N OParent 0 1 1 1 2 2 3 3 4 4 5 6 6 7 8ABE CDK FLMGN HOIJ11.有一个完全二叉树按层次顺序存放在一维数组中,如下所示:请指出结点P的父结点,左子女,右子女。

数据结构的应用题

数据结构的应用题

数据结构的应用题
1.求二叉树的深度:给定一棵二叉树,求其深度(即树的最大深度)。

可以使用递归或非递归的方式实现。

2. 判断链表是否有环:给定一个单向链表,判断是否存在环,如果存在,找出环的入口节点。

可以使用快慢指针的方式实现。

3. 实现一个 LRU 缓存:实现一个最近最少使用(LRU)缓存,支持 get 和 put 操作。

缓存大小固定,超过大小时按照 LRU 原则淘汰元素。

4. 判断一个字符串是否是回文:给定一个字符串,判断是否是回文字符串。

可以使用栈或双指针的方式实现。

5. 实现一个简单的图搜索算法:给定一个有向图,实现图的广度优先搜索或深度优先搜索算法。

可以使用邻接矩阵或邻接表的方式存储图。

- 1 -。

数据结构习题(含答案)

数据结构习题(含答案)

一、单选题(每小题3分,共30分)1.在逻辑上可以把数据结构分成。

( ) A.动态结构和静态结构B.紧凑结构和非紧凑结构C.线性结构和非线性结构D.内部结构和外部结构2.串是_________。

( ) A.不少于一个字母的序列B.任意个字母的序列C.不少于一个字符的序列D.有限个字符的序列3.在n个元素的顺序表中,时间复杂度是O(1)的操作是______。

( ) A.获得第i个数据元素值B.查找给定值C.在第i个位置上插入数据元素D.删除第i个数据元素4.线性表若采用链式存储结构时,要求内存中可用存储单元的地址________。

( )A. 必须是连续的B. 部分地址必须是连续的C. 一定是不连续的D. 连续或不连续都可以5.单链表中,在p结点之后插入q结点,操作的语句为。

( ) A.q->next=p->next,p->next=q B.p=q->next,q->next=pC.p->next=q->next,q->next=p D.q=p->next,p->next=q6.栈中数据元素的插入和删除操作是在表的进行的。

( )A.一端B.两端C.中间D.任意位置7.队列的特点是。

( )A.先进先出B.后进先出C.先进后出D.随机存取8.树中结点A有3个兄弟,结点B是A的双亲,则B的度是。

( )A.1B.2C.3D.49.下面关于图的存储结构的叙述中正确的是____________。

( )A.用邻接矩阵存储图,占用空间大小只与图中顶点数有关,而与边数无关B.用邻接矩阵存储图,占用空间大小只与图中边数有关,而与顶点数无关C.用邻接表存储图,占用空间大小只与图中顶点数有关,而与边数无关D.用邻接表存储图,占用空间大小只与图中边数有关,而与顶点数无关10.对于不带权的有向图,其邻接矩阵的每一列包含的“1”的个数为。

( )A.图中每个顶点的入度B.图中每个顶点的出度C.图中弧的条数D.图中连通分量的数目二、判断题(每小题1分,共10分)对于正确的说法,请在题前的括号内打√,错误的说法则打×。

数据结构应用题练习

数据结构应用题练习

1、假设一棵二叉树的层序序列是ABCDEFGHIJ 和中序序列是DBGEHJACIF,请画出该树。

21、有一个完全二叉树按层次顺序存放在一维数组中,如下所示:请指出结点P 的父结点,左子女,右子女。

3、给出下列二叉树的先序序列。

4、已知二叉树的先序遍历序列为ABCDEFGH ,中序遍历序列为CBEDFAGH ,画出二叉树。

答案:二叉树形态AFHGDECB(2)设一棵二叉树的先序序列: A B D F C E G H ,中序序列: B F D A G E H C ①画出这棵二叉树。

②画出这棵二叉树的后序线索树。

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

ABFD (CE HG AED CB HG F AEDCBHG F null(1) (2)1、已知一棵二叉树的前序序列为:A,B,D,G,J,E,H,C,F,I,K,L中序序列:D,J,G,B,E,H,A,C,K,I,L,F。

i.写出该二叉树的后序序列;ii.画出该二叉树;iii.求该二叉树的高度(假定空树的高度为-1)和度为2、度为1、及度为0的结点个数。

该二叉树的后序序列为:J,G,D,H,E,B,K,L,I,F,C,A。

该二叉树的形式如图所示:该二叉树高度为:5。

度为2的结点的个数为:3。

度为1的结点的个数为:5。

度为0的结点个数为:4。

5、试用权集合{12,4,5,6,1,2}构造哈夫曼树,并计算哈夫曼树的带权路径长度。

答案:215611187341230WPL=12*1+(4+5+6)*3+(1+2)*4=12+45+12=696、已知权值集合为{5,7,2,3,6,9},要求给出哈夫曼树,并计算带权路径长度WPL 。

答案:(1)树形态:325510199761332(2)带权路径长度:WPL=(6+7+9)*2+5*3+(2+3)*4=44+15+20=79(3) 假设用于通信的电文仅由8个字母组成,字母在电文中出现的频率分别为0.07,0.19,0.02,0.06,0.32,0.03,0.21,0.10。

(完整word版)数据结构应用题练习

(完整word版)数据结构应用题练习

1、假设一棵二叉树的层序序列是ABCDEFGHIJ 和中序序列是DBGEHJACIF,请画出该树。

21、有一个完全二叉树按层次顺序存放在一维数组中,如下所示:请指出结点P 的父结点,左子女,右子女。

3、给出下列二叉树的先序序列。

4、已知二叉树的先序遍历序列为ABCDEFGH ,中序遍历序列为CBEDFAGH ,画出二叉树。

答案:二叉树形态AFHGDECB(2)设一棵二叉树的先序序列: A B D F C E G H ,中序序列: B F D A G E H C ①画出这棵二叉树。

②画出这棵二叉树的后序线索树。

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

ABFD CE HG(1) (2)1、已知一棵二叉树的前序序列为:A,B,D,G,J,E,H,C,F,I,K,L中序序列:D,J,G,B,E,H, A,C,K,I,L,F。

i.写出该二叉树的后序序列;ii.画出该二叉树;iii.求该二叉树的高度(假定空树的高度为-1)和度为2、度为1、及度为0的结点个数。

该二叉树的后序序列为:J,G,D,H,E,B,K,L,I,F,C,A。

该二叉树的形式如图所示:该二叉树高度为:5。

度为2的结点的个数为:3。

度为1的结点的个数为:5。

度为0的结点个数为:4。

5、试用权集合{12,4,5,6,1,2}构造哈夫曼树,并计算哈夫曼树的带权路径长度。

答案:215611187341230WPL=12*1+(4+5+6)*3+(1+2)*4=12+45+12=696、已知权值集合为{5,7,2,3,6,9},要求给出哈夫曼树,并计算带权路径长度WPL 。

答案:(1)树形态:325510199761332(2)带权路径长度:WPL=(6+7+9)*2+5*3+(2+3)*4=44+15+20=79(3) 假设用于通信的电文仅由8个字母组成,字母在电文中出现的频率分别为0.07,0.19,0.02,0.06,0.32,0.03,0.21,0.10。

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

数据结构测试题
一、教材9.1 (1)(3)(6)
对关键字序列{503,087,512,061,908,170,897,275,653,526}做基数排序,根据关键字范围确定基数,写出每一次分配收集的结果。

二、对关键字序列{40,27,28,12,15,50,7}建立大根堆,输出第一个元素后,再调整堆,
画出对的状态。

三、(10分)有一哈希表 HT, 表长 n=16, 哈希函数 H(key)=key mod 13
试用:链地址解决冲突方法. 将一组关键字序列 {6, 14, 33, 01, 68, 20, 84, 27} 登入 HT 中.请填写每一个地址的关键字。

计算查找成功和不成功时的时间复杂度 (只需画出空间分配, 不需要写出算法).
四、(10分)已知带权连通图 G(V, E)如下:
1)根据图的邻接表结构,将每个结点的邻接点按顺序填入下表。

2)去掉图中的权值,画出从顶点1出发的深度优先生成树和广度优先生成树。

①─ 16 ─②
|\21 11/|\5
19|⑥|6 ③
|/33 14\|/6
⑤─ 18 ─④。

相关文档
最新文档