2017《数据结构》期末考试试题及答案
《数据结构》期末考试试题及答案
《数据结构》期末考试试题及答案一、单项选择题1. 数据结构是计算机科学的基础学科之一。
下列哪个选项正确描述了数据结构的定义?A. 数据结构是一种计算机程序B. 数据结构是一种存储和组织数据的方法C. 数据结构是一种人工智能技术D. 数据结构是一种操作系统答案:B2. 链表和数组是常见的数据结构,它们之间的主要区别是:A. 数组可以存储不同类型的数据,而链表只能存储相同类型的数据B. 数组的元素在内存中是连续存储的,而链表的元素在内存中是分散存储的C. 链表可以随机访问元素,而数组只能顺序访问元素D. 链表的插入和删除操作更高效,而数组的访问操作更高效答案:B3. 在二叉树中,每个节点最多可以有多少个子节点?A. 1B. 2C. 3D. 无限多个答案:B二、填空题1. 假设有一组数据 [5, 8, 3, 2, 9],按照从小到大的顺序进行冒泡排序的过程中,经过三次交换后的结果是__2__,__3__,__5__,__8__,__9__。
2. 请完成以下代码,实现栈的入栈和出栈操作:```pythonclass Stack:def __init__(self):self.stack = []def push(self, item):self.stack.append(item)def pop(self):if not self.is_empty():return self.stack.pop()def is_empty(self):# 示例代码s = Stack()s.push(1)s.push(2)s.push(3)print(s.pop()) # 输出 3print(s.pop()) # 输出 2print(s.is_empty()) # 输出 False ```答案:```pythonclass Stack:def __init__(self):self.stack = []def push(self, item):self.stack.append(item)def pop(self):if not self.is_empty():def is_empty(self):return len(self.stack) == 0# 示例代码s = Stack()s.push(1)s.push(2)s.push(3)print(s.pop()) # 输出 3print(s.pop()) # 输出 2print(s.is_empty()) # 输出 False```三、简答题1. 请简要介绍树的基本概念及常见的树结构。
数据结构期末考试题及答案
数据结构期末考试题及答案一、单项选择题(每题2分,共20分)1. 在数据结构中,算法的时间复杂度是指()。
A. 执行算法所需要的计算工作量B. 执行算法所需要的存储空间C. 执行算法所需要的时间D. 执行算法所需要的内存大小答案:A2. 线性表的顺序存储结构和链式存储结构相比,其优点是()。
A. 插入和删除操作快B. 存储密度高C. 存储空间可以动态分配D. 存储空间利用率高答案:B3. 栈的基本运算中,不包括()。
A. 入栈B. 出栈C. 取栈顶元素D. 排序答案:D4. 在二叉树的遍历中,先序遍历的顺序是()。
A. 先根后子B. 先子后根C. 先左后右D. 先右后左答案:A5. 哈希表解决冲突的方法不包括()。
A. 分离链接法B. 线性探测法C. 链地址法D. 二分查找法答案:D6. 一个图的邻接矩阵表示法中,若第i行第j列的元素为1,则表示()。
A. 顶点i和顶点j之间有一条边B. 顶点i和顶点j之间没有边C. 顶点i和顶点j之间有n条边D. 顶点i和顶点j之间有m条边答案:A7. 在查找算法中,二分查找法适用于()。
A. 线性表B. 哈希表C. 树形结构D. 图结构答案:A8. 快速排序算法的时间复杂度在最坏情况下是()。
A. O(n)B. O(nlogn)C. O(n^2)D. O(2^n)答案:C9. 一个有n个顶点的无向图,其边数最多为()。
A. nB. n(n-1)/2C. n(n+1)/2D. 2n答案:B10. 以下哪个不是排序算法()。
A. 冒泡排序B. 选择排序C. 插入排序D. 归并排序答案:D二、填空题(每题2分,共20分)1. 在数据结构中,一个算法的空间复杂度是指算法执行过程中所需要的___________。
答案:存储空间2. 线性表的链式存储结构中,每个节点包含___________和___________。
答案:数据元素,指针3. 栈的特点是___________,___________。
数据结构期末考试试题及答案
数据结构期末考试试题及答案一、选择题1. 以下哪种数据结构是线性存储结构?A. 树B. 图C. 栈D. 队列答案:C2. 在链表中,如果一个节点既没有前驱也没有后继,那么这个节点被称作什么?A. 首节点B. 尾节点C. 中间节点D. 孤立节点答案:B3. 树的度是指什么?A. 树中节点的个数B. 树中最大的层次数C. 树的分支数D. 树的节点的度的最大值答案:C4. 在二叉搜索树中,若要查找给定值的节点,当查找失败时应返回的值是?A. -1B. 0C. 1D. 该值本身答案:A5. 快速排序算法的时间复杂度最坏情况下是多少?A. O(n)B. O(nlogn)C. O(n^2)D. O(n!)答案:C二、填空题1. 在顺序表中,元素的物理位置相邻的特点是________,这使得顺序表在________操作上具有较高的效率。
答案:连续性;访问2. 链表相比顺序表的优势在于它能够动态地________存储空间,并且________操作不需要移动大量元素。
答案:分配和释放;插入与删除3. 栈是一种________的数据结构,只允许在________进行插入和删除操作。
答案:后进先出;栈顶4. 图的遍历算法主要有两种,分别是________和________。
答案:深度优先搜索;广度优先搜索5. 哈夫曼树是一种特殊的二叉树,它常用于数据压缩,其构建过程是基于________原则。
答案:最小权值三、简答题1. 请简述数组和链表的优缺点。
答案:数组通过索引直接访问元素,访问速度快,但大小固定,插入和删除操作需要移动大量元素。
链表元素通过指针连接,可以动态分配大小,插入和删除效率高,但访问速度较慢,因为需要从头开始遍历。
2. 什么是二叉树的前序遍历、中序遍历和后序遍历?答案:二叉树的前序遍历是先访问根节点,然后遍历左子树,最后遍历右子树。
中序遍历是先遍历左子树,然后访问根节点,最后遍历右子树。
后序遍历是先遍历左子树,然后遍历右子树,最后访问根节点。
数据结构期末考试及答案
一、单选题1、逻辑上通常可以将数据结构分为( )A.初等结构和组合结构B.顺序结构和链式结构C.线性结构和非线性结构D.动态结构和静态结构正确答案:C2、如果在数据结构中每个数据元素只可能有一个直接前驱,但可以有多个直接后继,则该结构是()。
A.栈B. 队列C.图D.树正确答案:D3、在长度为n的顺序表的第i个位置上插入一个元素(1<=i<=n+1),元素的移动次数为:()A.n-iB.i-1C.n-i+1D.i正确答案:C4、在非空线性链表中由p所指结点的后面插入一个由q所指的结点,应依次执行()A.q->next=p;p->next=q;B.p->next=q;q->next=p;C.q->next=p->next;p->next=q;D.q->next=p->next;p=q;正确答案:C5、已知栈的最大容量为4。
若进栈序列为1,2,3,4,5,6,且进栈和出栈可以穿插进行,则可能出现的出栈序列为()A.2,3,5,6,1,4B.1,4,6,5,2,3C.5,4,3,2,1,6D.3,2,5,4,1,6正确答案:D6、设栈S和队列Q初始均为空,若6个元素入栈的顺序为1、2、3、4、5、6,一个元素出栈以后立即入队列Q,若6个元素出队的顺序为2、4、3、6、5、1,则栈S的容量至少为()A.3B.5C.4D.2正确答案:A7、在计算机内实现递归算法时所需的辅助数据结构是()A.队列B.栈C.图D.树正确答案:B8、循环队列存储在数组A[0..m-1],则出队时的操作为()A.front=(front mod m)+1B.ront=(front+1)mod mC.front=front+1D.front=(front+1)mod (m-1)正确答案:B9、若以S和X分别表示进栈和退栈操作,则对初始状态为空的栈可以进行的栈操作系列合法的是()A.SXXSXSSXB.SSSXXSXXC.SXSSXXXXD.SXSXXSSX正确答案:B10、在具有m个单元的循环队列中,队头指针为front,队尾指针为rear,则队满的条件是()A.(front+1)%m==rearB.(rear+1)%m==frontC.front==rearD.rear+1==front正确答案:B11、在表长为n的顺序表上做插入运算,平均要移动的结点数为()A.n/4B.nC.n/3D.n/2正确答案:D12、元素的进栈次序为A,B,C,D,E,则退栈中不可能的序列是()A.E,D,C,B,AB.A,B,C,D,EC.E,A,B,C,DD.B,C,D,E,A正确答案:C13、下述二叉树中,()满足性质:从任一结点出发到根的路径上所经过的结点序列按其关键字有序。
《数据结构》期末考试试卷试题及答案
《数据结构》期末考试试卷试题及答案一、选择题(每题5分,共20分)1. 下列哪个不是线性结构?A. 栈B. 队列C. 图D. 数组2. 下列哪个不是栈的基本操作?A. 入栈B. 出栈C. 查找D. 判断栈空3. 下列哪个不是队列的基本操作?A. 入队B. 出队C. 查找D. 判断队列空4. 下列哪个不是图的基本概念?A. 顶点B. 边C. 路径D. 环二、填空题(每题5分,共20分)5. 栈是一种______结构的线性表,队列是一种______结构的线性表。
6. 图的顶点集记为V(G),边集记为E(G),则无向图G=(V(G),E(G)),有向图G=(______,______)。
7. 树的根结点的度为______,度为0的结点称为______。
8. 在二叉树中,一个结点的左子结点是指______的结点,右子结点是指______的结点。
三、简答题(每题10分,共30分)9. 简述线性表、栈、队列、图、树、二叉树的基本概念。
10. 简述二叉树的遍历方法。
11. 简述图的存储结构及其特点。
四、算法题(每题15分,共30分)12. 编写一个算法,实现栈的入栈操作。
13. 编写一个算法,实现队列的出队操作。
五、综合题(每题20分,共40分)14. 已知一个无向图G=(V,E),其中V={1,2,3,4,5},E={<1,2>,<1,3>,<2,4>,<3,4>,<4,5>},画出图G,并给出图G的邻接矩阵。
15. 已知一个二叉树,其前序遍历序列为ABDCE,中序遍历序列为DBACE,请画出该二叉树,并给出其后序遍历序列。
答案部分一、选择题答案1. C2. C3. C4. D二、填空题答案5. 后进先出先进先出6. V(G),E(G)7. 0 叶结点8. 左孩子右孩子三、简答题答案9. (1)线性表:一个线性结构,其特点是数据元素之间存在一对一的线性关系。
数据结构 本-国家开放大学中央电大2017年秋季学期“本科”期未考试试卷及答案
c.插入元素的操作不需要移动元素
720
D. 删除元素的操作需要移动元素
5. 图状结构中数据元素的位置之间存在(
)的关系。
A. 一对一
B. 多对多
C. 一对多
D. 每一个元素都有一个直接前驱和一个直接后继
6. 元素 15 , 9 , 11 , 13 按顺序依次进找,则该校的不可能输出序列是( 交替进行)。
typedef struct int key;
}NODE;
int Binary_Search(NODE a[ ], int n , int k)
int low , mid , high; low=O; high=n-1 ; while( (1)
m 山
d〕 a( h「 ι一
?、
",
-
L
U 且
E
VJ
一 一
最小元素〉的方法建立的初始堆(要求以完全二叉树描述)。 (2) 对关键字序列 (26 , 59 , 36 , 18 , 20 , 64) 采用快速排序,给出以第一个关键字为分割元
素,经过一次划分后的结果。
|得分|评卷人|
|I I
四、程序填空题(每空 2 分,共 16 分}
25. 以下函数在 a[O] 到 a[n-1] 中,用折半查找算法查找关键宇等于 k 的记录,查找成功 返回该记录的下标,失败时返回一1,完成程序中的空格
void lnorder (struct BTreeNode 铃 BT)
if( BT! = NULL) {
(1) (2)
Inorder(BT 一一 >right); } 利用上述程序对图 2 进行先序遍历,结果是 (3)
o
图2
大学数据结构期末考试试题(有答案)
“数据结构”期末考试试题一、单选题(每小题2分,共12分)1.在一个单链表HL中,若要向表头插入一个由指针p指向的结点,则执行( )。
A. HL=ps p一>next=HLB. p一>next=HL;HL=p3C. p一>next=Hl;p=HL;D. p一>next=HL一>next;HL一>next=p;2.n个顶点的强连通图中至少含有( )。
A.n—l条有向边B.n条有向边C.n(n—1)/2条有向边D.n(n一1)条有向边3.从一棵二叉搜索树中查找一个元素时,其时间复杂度大致为( )。
A.O(1)B.O(n)C.O(1Ogzn)D.O(n2)4.由权值分别为3,8,6,2,5的叶子结点生成一棵哈夫曼树,它的带权路径长度为( )。
A.24 B.48C. 72 D. 535.当一个作为实际传递的对象占用的存储空间较大并可能需要修改时,应最好把它说明为( )参数,以节省参数值的传输时间和存储参数的空间。
A.整形B.引用型C.指针型D.常值引用型·6.向一个长度为n的顺序表中插人一个新元素的平均时间复杂度为( )。
A.O(n) B.O(1)C.O(n2) D.O(10g2n)二、填空题(每空1分,共28分)1.数据的存储结构被分为——、——、——和——四种。
2.在广义表的存储结构中,单元素结点与表元素结点有一个域对应不同,各自分别为——域和——域。
3.——中缀表达式 3十x*(2.4/5—6)所对应的后缀表达式为————。
4.在一棵高度为h的3叉树中,最多含有——结点。
5.假定一棵二叉树的结点数为18,则它的最小深度为——,最大深度为——·6.在一棵二叉搜索树中,每个分支结点的左子树上所有结点的值一定——该结点的值,右子树上所有结点的值一定——该结点的值。
7.当向一个小根堆插入一个具有最小值的元素时,该元素需要逐层——调整,直到被调整到——位置为止。
数据结构期末试题及答案
《数据结构》期末考试试卷一、选择题(单选题,每小题3分,共33分)1.已知某二叉树的中序、层序序列分别为DBAFCE、FDEBCA,则该二叉树的后序序列为 B 。
A.BCDEAF B.ABDCEF C.DBACEF D.DABECF 2.在11个元素的有序表A[1…11]中进行折半查找(⎣⎦2/)low+),查找元素(highA[11]时,被比较的元素的下标依次是 B 。
A.6,8,10,11 B.6,9,10,11 C.6,7,9,11 D.6,8,9,113.由元素序列(27,16,75,38,51)构造平衡二叉树,则首次出现的最小不平衡子树的根(即离插入结点最近且平衡因子的绝对值为2的结点)为 D 。
A.27 B.38 C.51 D.754.利用逐点插入法建立序列(50,72,43,85,75,20,35,45,65,30)对应的二叉排序树以后,查找元素30要进行 B 次元素间的比较。
A.4 B.5 C.6 D.75.循环链表的主要优点是 D 。
A.不再需要头指针了B.已知某个结点的位置后,很容易找到它的直接前驱结点C.在进行删除后,能保证链表不断开D.从表中任一结点出发都能遍历整个链表6.已知一个线性表(38,25,74,63,52,48),假定采用散列函数h(key)=key%7计算散列地址,并散列存储在散列表A[0…6]中,若采用线性探测方法解决冲突,则在该散列表上进行等概率查找时查找成功的平均查找长度为 C 。
A.1.5 B.1.7 C.2.0 D.2.37.由权值为9,2,5,7的四个叶子结点构造一棵哈夫曼树,该树的带权路径长度为C 。
A.23 B.37 C.44 D.468.在最好和最坏情况下的时间复杂度均为O(nlogn)且稳定的排序方法是 D 。
A.基数排序B.快速排序C.堆排序D.归并排序9.无向图G=(V,E),其中V={a,b,c,d,e,f},E={(a,b),(a,e),(a,c),(b,e),(c,f),(f,d),(e,d)}。
2017年数据结构期末考试题及答案A
2021年数据构造期末考试题及答案一、选择题(共计50分,每题2分,共25题)1.在数据构造中,从逻辑上可以把数据构造分为 C 。
A.动态构造与静态构造B.紧凑构造与非紧凑构造C.线性构造与非线性构造D.内部构造与外部构造2.数据构造在计算机内存中的表示是指 A 。
A.数据的存储构造B.数据构造C.数据的逻辑构造D.数据元素之间的关系3.在数据构造中,与所使用的计算机无关的是数据的 A 构造。
A.逻辑B.存储C.逻辑与存储D.物理4.在存储数据时,通常不仅要存储各数据元素的值,而且还要存储 C 。
A.数据的处理方法B.数据元素的类型C.数据元素之间的关系D.数据的存储方法5.在决定选取何种存储构造时,一般不考虑 A 。
A.各结点的值如何B.结点个数的多少C.对数据有哪些运算D.所用的编程语言实现这种构造是否方便。
6.以下说法正确的选项是 D 。
A.数据项是数据的根本单位B.数据元素是数据的最小单位C.数据构造是带构造的数据项的集合D.一些外表上很不一样的数据可以有一样的逻辑构造7.在以下的表达中,正确的选项是 B 。
A.线性表的顺序存储构造优于链表存储构造B.二维数组是其数据元素为线性表的线性表C.栈的操作方式是先进先出D.队列的操作方式是先进后出8.通常要求同一逻辑构造中的所有数据元素具有一样的特性,这意味着 B 。
A.数据元素具有同一特点B.不仅数据元素所包含的数据项的个数要一样,而且对应的数据项的类型要一致C.每个数据元素都一样D.数据元素所包含的数据项的个数要相等9.链表不具备的特点是 A 。
A.可随机访问任一结点B.插入删除不需要移动元素C.不必事先估计存储空间D.所需空间与其长度成正比10.假设某表最常用的操作是在最后一个结点之后插入一个结点或删除最后一个结点,那么采用 D 存储方式最节省运算时间。
A.单链表B.给出表头指针的单循环链表C.双链表D.带头结点的双循环链表11.需要分配较大空间,插入与删除不需要移动元素的线性表,其存储构造是 B 。
2017《数据结构》期末考试试题及答案
2017《数据结构》期末考试试题及答案2017《数据结构》期末考试试题及答案《数据结构》期末考试试题及答案1 (2)试题1答案 (7)《数据结构》期末考试试题及答案2 (9)试题2答案 (14)《数据结构》期末考试试题及答案3 (16)试题3答案 (21)《数据结构》期末考试试题及答案1⼀、单选题(每题 2 分,共20分)1.栈和队列的共同特点是( )。
A.只允许在端点处插⼊和删除元素B.都是先进后出C.都是先进先出D.没有共同点2.⽤链接⽅式存储的队列,在进⾏插⼊运算时( ).A. 仅修改头指针B. 头、尾指针都要修改C. 仅修改尾指针D.头、尾指针可能都要修改3.以下数据结构中哪⼀个是⾮线性结构?( )A. 队列B. 栈C. 线性表D. ⼆叉树4.设有⼀个⼆维数组A[m][n],假设A[0][0]存放位置在644(10),A[2][2]存放位置在676(10),每个元素占⼀个空间,问A[3][3](10)存放在什么位置?脚注(10)表⽰⽤10进制表⽰。
A.688 B.678 C.692 D.6965.树最适合⽤来表⽰( )。
A.有序数据元素B.⽆序数据元素C.元素之间具有分⽀层次关系的数据D.元素之间⽆联系的数据6.⼆叉树的第k层的结点数最多为( ).A.2k-1 B.2K+1 C.2K-1 D. 2k-17.若有18个元素的有序表存放在⼀维数组A[19]中,第⼀个元素放A[1]中,现进⾏⼆分查找,则查找A[3]的⽐较序列的下标依次为( )A. 1,2,3B. 9,5,2,3C. 9,5,3D. 9,4,2,38.对n个记录的⽂件进⾏快速排序,所需要的辅助存储空间⼤致为A. 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的元素有()个,A.1 B.2 C.3 D.410.设有6个结点的⽆向图,该图⾄少应有( )条边才能确保是⼀个连通图。
数据结构期末考试试卷及答案
数据结构期末考试试卷及答案一、选择题(每题2分,共20分)1. 下列哪一个不是线性结构的特点?A. 有且只有一个根结点B. 每个结点最多有一个前驱和一个后继C. 有多个根结点D. 有且只有一个叶子结点答案:C2. 在单链表中,头结点的作用是()A. 作为链表的起点B. 作为链表的终点C. 存储链表中的数据元素D. 作为链表中的第一个元素答案:A3. 在顺序表中,插入一个元素的时间复杂度是()A. O(1)B. O(n)C. O(logn)D. O(n^2)答案:B4. 下列哪种排序算法的平均时间复杂度最高?A. 冒泡排序B. 快速排序C. 直接插入排序D. 希尔排序答案:C5. 在二叉树中,具有3个结点的二叉树有()种不同的形态。
A. 2B. 3C. 4D. 5答案:C6. 下列哪种情况不适合使用哈希表?A. 查找速度快B. 数据量较大C. 数据量较小D. 数据元素关键字分布均匀答案:C7. 在图的遍历过程中,下列哪种遍历方法属于深度优先遍历?A. 广度优先遍历B. 深度优先遍历C. 混合遍历D. 随机遍历答案:B8. 下列哪种数据结构不适用于实现栈?A. 顺序表B. 链表C. 树D. 图答案:C9. 在双向链表中,删除一个元素的时间复杂度是()A. O(1)B. O(n)C. O(logn)D. O(n^2)答案:A10. 下列哪种情况不适合使用队列?A. 数据元素先进先出B. 数据元素后进先出C. 数据元素随机进出D. 数据元素按顺序进出答案:B二、填空题(每题2分,共20分)1. 线性表是具有______个数据元素的有限序列。
答案:n2. 在单链表中,每个结点包含两个域:数据域和______域。
答案:指针3. 在顺序表中,插入一个元素的时间复杂度是______。
答案:O(n)4. 快速排序的平均时间复杂度为______。
答案:O(nlogn)5. 哈希表中的冲突指的是______。
答案:不同的关键字对应同一存储位置6. 在图的遍历过程中,深度优先遍历算法使用的数据结构是______。
《数据结构》期末考试试卷(含答案)
《数据结构》期末考试试卷( A )一、选择题(每小题2分,共24分)1.计算机识别、存储和加工处理的对象被统称为( A )A.数据B.数据元素C.数据结构D.数据类型2.栈和队列都是(A)A.限制存取位置的线性结构B.顺序存储的线性结构C.链式存储的线性结构D.限制存取位置的非线性结构3.链栈与顺序栈相比,比较明显的优点是( D )A.插入操作更加方便B.删除操作更加方便C.不会出现下溢的情况D.不会出现上溢的情况4.采用两类不同存储结构的字符串可分别简称为( B )A.主串和子串B.顺序串和链串C.目标串和模式串D.变量串和常量串5.一个向量第一个元素的存储地址是100,每个元素的长度为2,则第5个元素的地址是:BA. 110 B .108C. 100D. 1206.串是一种特殊的线性表,其特殊性体现在:BA.可以顺序存储 B .数据元素是一个字符C. 可以链接存储D. 数据元素可以是多个字符7.设高度为h的二叉树上只有度为0和度为2的结点,则此类二叉树中所包含的结点数至少为:CA. 2h B .2h-1C. 2h+1D. h+1软件开发网8.树的基本遍历策略可分为先根遍历和后根遍历;二叉树的基本遍历策略可分为先序遍历、中序遍历和后序遍历。
这里,我们把由树转化得到的二叉树叫做这棵树对应的二叉树。
下列结论哪个正确?AA. 树的先根遍历序列与其对应的二叉树的先序遍历序列相同B .树的后根遍历序列与其对应的二叉树的后序遍历序列相同C. 树的先根遍历序列与其对应的二叉树的中序遍历序列相同D. 以上都不对9.一个有n个顶点的无向图最多有多少边?CA. n B .n(n-1)C. n(n-1)/2D. 2n10.在一个图中,所有顶点的度数之和等于所有边数的多少倍?CA. 1/2 B .1C. 2D. 411.当在二叉排序树中插入一个新结点时,若树中不存在与待插入结点的关键字相同的结点,且新结点的关键字小于根结点的关键字,则新结点将成为(A)A.左子树的叶子结点B.左子树的分支结点C.右子树的叶子结点D.右子树的分支结点软件开发网12.对于哈希函数H(key)=key%13,被称为同义词的关键字是( D )A.35和41B.23和39C.15和44D.25和51二、已知某棵二叉树的前序遍历结果为A,B,D,E,G,C,F,H,I,J,其中中序遍历的结果为D,B,G,E,A,H,F,I,J,C。
数据结构期末考试题及答案
数据结构期末考试题及答案一、单项选择题(每题3分,共30分)1. 在数据结构中,最基本的数据结构是()。
A. 线性结构B. 树形结构C. 图形结构D. 非线性结构答案:A2. 栈是一种特殊的线性表,其特点是()。
A. 先进先出B. 先进后出C. 后进先出D. 后进后出答案:C3. 在二叉树中,度为2的结点数为n,度为1的结点数为m,度为0的结点数为p,则m的值为()。
A. n-1B. n+1C. p-1D. p+1答案:A4. 哈希表的构造方式是()。
A. 线性结构B. 树形结构C. 链式结构D. 索引结构答案:D5. 在图的遍历过程中,深度优先搜索算法采用的是()。
A. 队列B. 栈C. 链表D. 树答案:B6. 快速排序算法的时间复杂度在最坏情况下是()。
A. O(n)B. O(nlogn)C. O(n^2)D. O(2^n)答案:C7. 以下哪个排序算法是不稳定的排序算法()。
A. 冒泡排序B. 快速排序C. 归并排序D. 堆排序答案:B8. 在数据库中,索引通常采用哪种数据结构()。
A. 线性表B. 树形结构C. 图形结构D. 散列表答案:B9. 以下哪个不是二叉搜索树的性质()。
A. 左子树上所有结点的值都小于它的根结点的值B. 右子树上所有结点的值都大于它的根结点的值C. 左、右子树也分别为二叉搜索树D. 所有结点的值都相等答案:D10. 在图的表示方法中,邻接矩阵适用于表示()。
A. 稠密图B. 稀疏图C. 有向图D. 无向图答案:A二、填空题(每题4分,共20分)1. 在数据结构中,一个算法的空间复杂度是指算法在执行过程中需要的___________。
答案:存储空间2. 堆排序中,调整堆的过程称为___________。
答案:堆化3. 在图的遍历中,广度优先搜索使用的辅助数据结构是___________。
答案:队列4. 一个长度为n的链表,删除第i个元素的时间复杂度是___________。
数据结构期末考试试题及答案
数据结构期末考试真题及答案期末样卷参考答案一.是非题〔每题1分共10分〕1. 线性表的链式存储结构优于顺序存储结构。
F2. 栈和队列也是线性表。
如果需要,可对它们中的任一元素进行操作。
F3.字符串是数据对象特定的线性表。
T4.在单链表P指针所指结点之后插入S结点的操作是:P->next= S ; S-> next = P->next; F5.一个无向图的连通重量是其极大的连通子图。
T 6.邻接表可以表示有向图,也可以表示无向图。
T 7.假设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 〕。
2017年数据结构期末考试题及答案A
2017年数据结构期末考试题及答案、选择题(共计 50 分,每题 2 分,共 25题)1.在数据结构中,从逻辑上可以把数据结构分为A.动态结构和静态结构 B .紧凑结构和非紧凑结构C•线性结构和非线性结构 D.内部结构和外部结构2.数据结构在计算机内存中的表示是指 AA.数据的存储结构B.数据结构C.数据的逻辑结构 D .数据元素之间的关系3.在数据结构中,与所使用的计算机无关的是数据的 A 结构。
A.逻辑B.存储C.逻辑和存储D.物理4 .在存储数据时,通常不仅要存储各数据元素的值,而且还要存储A.数据的处理方法B.数据元素的类型C数据元素之间的关系 D.数据的存储方法5.在决定选取何种存储结构时,一般不考虑 A 。
A.各结点的值如何B.结点个数的多少C•对数据有哪些运算 D.所用的编程语言实现这种结构是否方便。
6.以下说法正确的是 DA.数据项是数据的基本单位B.数据元素是数据的最小单位C数据结构是带结构的数据项的集合D. —些表面上很不相同的数据可以有相同的逻辑结构7 .在以下的叙述中,正确的是 B 。
A.线性表的顺序存储结构优于链表存储结构B.二维数组是其数据元素为线性表的线性表C.栈的操作方式是先进先出D.队列的操作方式是先进后出8.通常要求同一逻辑结构中的所有数据元素具有相同的特性,这意味着10.若某表最常用的操作是在最后一个结点之后插入一个结点或删除最后 个结点,则采用 D 存储方式最节省运算时间。
的双循环链表11.需要分配较大空间, 插入和删除不需要移动元素的线性表, 其存储结构12.非空的循环单链表head 的尾结点(由p 所指向)满足 CC. p —> next == head13.在循环双链表的P 所指的结点之前插入s 所指结点的操作是14.栈和队列的共同点是 C 。
B .都是先进先出15. 一个栈的进栈序列是a, b, c, d, e,则栈的不可能的输出序列是16.一个队列的入队序列是 1, 2, 3, 4,则队列的输出序列是A p —> prior —>prior=sB p —> prior —> next=sC s —> prior —> n ext =D s —> prior —> prior 二 ssA .数据元素具有同一特点 B . 不仅数据元素所包含的数据项的个数要相同,而且对应的数据项的类型 要一致C .每个数据元素都一样 D .数据元素所包含的数据项的个数要相等 9.链表不具备的特点是 A .可随机访问任一结点 B.插入删除不需要移动元素 C .不必事先估计存储空间 D.所需空间与其长度成正比A.单链表 B .给出表头指针的单循环链表C.双链表 D .带头结点A.单链表B .静态链表 C.线性链表 D .顺序存储结构A. p —>next == NULLB. p 一 NULLA.都是先进后出C •只允许在端点处插入和删除元素D .没有共同点A .edcbaB .decbaC .dceabD .abcde则判断循环队列空的条件是CD. front = = 018 .若串S=‘ software ' 其子串的数目是 B 。
《数据结构》期末复习题及参考答案
《数据结构》复习资料一单选题 (共48题,总分值0分 )1. 设用链表作为栈的存储结构,则退栈操作(0 分)A. 必须判别栈是否为满B. 必须判别栈是否为空C. 判别栈元素的类型D. 对栈不作任何判别2. 下面关于m阶B树说法正确的是()。
①每个结点至少有两棵非空子树;②树中每个结点至多有m-1个关键字;③所有叶子在同一层上;④当插入一个数据项引起B树结点分裂后,树长高一层。
(0 分)A. ①②③B. ②③C. ②③④D. ③3. 下列关于文件的说法,错误的是()。
(0 分)A. 选择文件的组织方式时应考虑外存的性质和容量B. 不定长文件指的是总长度可变的文件C. 对文件的操作主要是维护和检索D. 文件的存储结构指的是文件在外存上的组织方式4. 设无向图的顶点个数为n,则该图最多有()条边。
(0 分)A. n-1B. n(n-1)/2C. n(n+1)/2D. n25. 设广义表L=((a,()),b,(c,d,e)),则Head(Tail(Tail(L)))的值为()。
(0 分)A. bB. cC. (c)D. (c,d,e)6. 设有一个二维数组A[m][n],假设A[0][0]存放位置在644(10),A[2][2]存放位置在676(10),每个元素占一个空间,问A[3][3](10)存放在什么位置?脚注(10)表示用10进制表示。
(0 分)A. 688B. 678C. 692D. 6967. 设某无向图中有n个顶点e条边,则该无向图中所有顶点的入度之和为(0 分)A. nB. eC. 2nD. 2e8. 广义表(a,(b,(),c))的深度为()。
(0 分)A. 1B. 2C. 3D. 49. 设有向图G中有五个顶点,各顶点的度分别为3、2、2、1、2,则G中弧数为()。
(0 分)A. 4条B. 5条C. 6条D. 无法确定10. 若有18个元素的有序表存放在一维数组A[19]中,第一个元素放A[1]中,现进行二分查找,则查找A[3]的比较序列的下标依次为(0 分)A. 1,2,3B. 9,5,2,3C. 9,5,3D. 9,4,2,311. 具有n个顶点的有向强连通图最少有()条弧。
数据结构期末考试题及答案
数据结构期末考试题及答案一、选择题1. 以下哪种数据结构是线性存储结构?A. 树B. 图C. 链表D. 哈希表答案:C2. 栈和队列的共同特点是:A. 只能在一端进行插入和删除操作B. 插入和删除操作在不同的两端进行C. 插入和删除操作在同一端进行D. 没有共同点答案:B3. 在二叉搜索树中,若要查找值为x的节点,当发现一个节点的值大于x时,应该:A. 在该节点的左子树中查找B. 在该节点的右子树中查找C. 停止查找D. 随机查找答案:A4. 快速排序算法的时间复杂度为:A. O(log n)B. O(n log n)C. O(n^2)D. O(1)答案:B5. 下面哪种排序算法适用于大数据量的排序?A. 冒泡排序B. 插入排序C. 快速排序D. 选择排序答案:C二、填空题1. 链表的基本操作包括________、________、________和________。
答案:创建、插入、删除、查找2. 在图的表示中,邻接矩阵法的主要缺点是________,而邻接表法的主要缺点是________。
答案:空间消耗大、查询效率低3. 哈夫曼树是一种基于________的最优二叉树,广泛应用于数据压缩和编码。
答案:字符频率4. 红黑树是一种自平衡的二叉搜索树,它的插入和删除操作能保证最坏情况下的查找时间复杂度对数级,具体为________。
答案:O(log n)5. 散列表(哈希表)解决冲突的方法主要有开放定址法、链地址法和________。
答案:双重散列法三、简答题1. 请简述数组和链表的区别及各自的优缺点。
答案:数组是一种顺序存储结构,它的特点是通过索引直接访问元素,访问速度快,但是大小固定,不便于动态扩展。
链表是非连续的存储结构,元素通过指针连接,可以动态地插入和删除元素,但是访问元素需要从头开始遍历,速度较慢。
2. 描述二分查找的算法过程及其时间复杂度。
答案:二分查找是一种在有序数组中查找特定元素的算法。
2017年电大本科《数据结构(本)》期末复习试题及答案
2017年电大本科《数据结构(本)》期末复习试题及答案一、单项选择题1.栈和队列的共同特点是()。
A.元素都可以随机进出B.都是先进先出C.都是先进后出D.都是操作受限的线性结构2.数据的存储结构包括数据元素的表示和()。
A.数据处理的方法B.数据元素间的关系的表示C.相关算法D.数据元素的类型3.对一个栈顶指针为top的链栈进行入栈操作,通过指针变量p生成入栈结点,则执行:p=(structnode*)malloc(sizeof(structnode);p->data=a;和()。
A.top->next=p;p=top;B.p->nex=top;top=p;C.top=top->next;p=top;D.p->next=top;p=top;4.树状结构中数据元素的位置之间存在()的关系。
A.每一个元素都有一个直接前驱和一个直接后继B.一对一C.多对多D.一对多5.设头指针为head的非空的单向链表,指针p指向尾结点,则通过以下操作()可使其成为单向循环链表。
A.p->next=NULL;B.head=p;C.p->next=head;D.p=head;6.设有一个长度为26的顺序表,要插入一个元素,并使它成为新表的第6个元素,需移动元素的个数为()。
A.21B.22C.20D.197.一种逻辑结构()。
A.只能有唯一的存储结构B.可以有不同的存储结构C.与存储该逻辑结构的计算机相关D.是指某一种数据元素的性质8.头指针为head的带头结点的单向循环链表,p所指向尾结点,要使该链表成为不带头结点的单向循环链表,可执行head=head->nex;和()。
A.p=head->nextB.head->next=pC.head->next=p->nextD.p->next=head;9.把数据存储到计算机中,并具体体现数据元素间的逻辑结构称为()。
word版,2017《数据结构》期末考试试题及答案,文档
2017《数据结构》期末考试一试题及答案《数据结构》期末考试一试题及答案1..................................... .. (2)试题1答案............................................. ............................................... (7)《数据结构》期末考试一试题及答案2..................................... .. (9)试题2答案............................................. ............................................... (14)《数据结构》期末考试一试题及答案3..................................... (16)试题3答案............................................. ............................................... (21)第1页共23页《数据结构》期末考试一试题及答案 1一、单项选择题(每题2分,共20分)1. 栈和行列的共同特色是( )。
A.只同意在端点处插入和删除元素B.都是先进后出C.都是先进先出D.没有共同点用链接方式储存的行列,在进行插入运算时().A.仅改正头指针B.头、尾指针都要改正C.仅改正尾指针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进制表示。
2017年电大本科数据结构期末考试试题及答案
数据结构(本)期末综合练习期末综合练习一一、单项选择题1.数据的物理结构( D)。
A.与数据的逻辑结构无关 B.仅仅包括数据元素的表示C.只包括数据元素间关系的表示 D.包括数据元素的表示和关系的表示2.数据元素是数据的基本单位,它(C )。
A.只能有一个数据项组成B.至少有二个数据项组成C.可以是一个数据项也可以由若干个数据项组成D.至少有一个数据项为指针类型3.从n个数中选取最大元素,( C )。
A.基本操作是数据元素间的交换B.算法的时间复杂度是O(n2)C.算法的时间复杂度是O(n) D.需要进行(n+1)次数据元素间的比较4.线性表的顺序结构中,( C )。
A.逻辑上相邻的元素在物理位置上不一定相邻B.数据元素是不能随机访问的C.逻辑上相邻的元素在物理位置上也相邻D.进行数据元素的插入、删除效率较高5.以下表中可以随机访问的是( D )。
A.单向链表 B.双向链表C.单向循环链表D.顺序表6.带头结点的单向链表为空的判断条件是( B )(设头指针为head)。
A.head = =NULL B.head->next= =NULLC.head->next= =head D.head!=NULL7 .设顺序存储的线性表长度为n,对于删除操作,设删除位置是等概率的,则删除一个元素平均移动元素的次数为( A )。
A.(n+1)/2 B.n C.2n D.n-i8.线性结构中数据元素的位置之间存在(A )的关系。
A.一对一B.一对多C.多对多D.每一个元素都有一个直接前驱和一个直接后继9.设top是一个链栈的栈顶指针,栈中每个结点由一个数据域data和指针域next组成,设用x接收栈顶元素,则出栈操作为(A )。
A.x=top->data;top=top->next; B.top=top->next;x=top->data;C.x=top-> next;top=top-> data; D.top->next =top; x=top->data;10.设顺序存储的线性表长度为n,要删除第i个元素,按课本的算法,当i=( C )时,移动元素的次数为3 A.3 B.n/2 C.n-3 D.411.以下说法正确的是( C )。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
if(L&&L->next){
q=L;L=L->next;p=L;
S1:
while(p->next) p=p->next;
S2:
p->next=q;q->next=NULL;
} return L; } 请回答下列问题:
(1)说明语句 S1 的功能;
(2)说明语句组 S2 的功能; (3)设链表表示的线性表为(a1,a2, …,an),写出算法执行后的返回值所表 示的线性表。
3、在下面的数组 a 中链接存储着一个线性表,表头指针为 a[o].next,则该
线性表为_________________________________________________。
注(10)表示用 10 进制表示。
A.688
B.678
C.692
D.696
5. 树最适合用来表示(
)。
A.有序数据元素
B.无序数据元素
C.元素之间具有分支层次关系的数据 D.元素之间无联系的数据
6. 二叉树的第 k 层的结点数最多为( ).
A.2k-1
B.2K+1
C.2K-1 D. 2k-1
7. 若有 18 个元素的有序表存放在一维数组 A[19]中,第一个元素放 A[1]
中,现进行二分查找,则查找 A[3]的比较序列的下标依次为(
)
A. 1,2,3
B. 9,5,2,3
C. 9,5,3
D. 9,4,2,3
8. 对 n 个记录的文件进行快速排序,所需要的辅助存储空间大致为
A. O(1) B. O(n) C. O(1og2n)
D. O(n2)
9. 对于线性表(7,34,55,25,64,46,20,10)进行散列存储时,若
二、
填空题(每空 1 分,共 26 分)
1. 正确性 易读性 强壮性 高效率
2. O(n)
3. 9 3 3
4. -1
34X*+2Y*3/-
5. 2n n-1 n+1
6. e 2e
7. 有向无回路
8. n(n-1)/2 n(n-1)
9. (12,40) ( ) (74) (23,55,63)
10. 增加 1
一、 单选题(每小题 2 分,共 8 分)
1、在一个长度为 n 的顺序线性表中顺序查找值为 x 的元素时,查找成功时的平
均查找长度(即 x 与元素的平均比较次数,假定查找每个元素的概率都相等)
为 ( )。
An
B n/2
C (n+1)/2
D (n-1)/2
2、在一个单链表中,若 q 所指结点是 p 所指结点的前驱结点,若在 q 与 p 之间插
C. 仅修改尾指针
D.头、尾指针可能都要修改
3. 以下数据结构中哪一个是非线性结构?( )
A. 队列 B. 栈
C. 线性表 D. 二叉树
4. 设有一个二维数组 A[m][n],假设 A[0][0]存放位置在 644(10),A[2][2]存
放位置在 676(10),每个元素占一个空间,问 A[3][3](10)存放在什么位置?脚
用克鲁斯卡尔算法得到最小生成树,试写出在最小生成树中依次得到的各条边。
第 4 页 共 23 页
4. 画出向小根堆中加入数据 4, 2, 5, 8, 3 时,每加入一个数据后堆的变化。
四、
阅读算法(每题 7 分,共 14 分)
1. LinkList mynote(LinkList L)
{//L 是不带头结点的单链表的头指针
2017《数据结构》期末考试试题及答案
《数据结构》期末考试试题及答案 1 ........................................................................2 试题 1 答案 ....................................................................................................................7 《数据结构》期末考试试题及答案 2 ........................................................................9 试题 2 答案 ..................................................................................................................14 《数据结构》期末考试试题及答案 3 ......................................................................16 试题 3 答案 ..................................................................................................................21
4. 后缀算式 9 2 3 +- 10 2 / -的值为__________。中缀算式(3+4X)-2Y/3 对应
的后缀算式为_______________________________。
5. 若用链表存储一棵二叉树时,每个结点除数据域外,还有指向左孩子和右
孩子的两个指针。在这种存储结构中,n 个结点的二叉树共有________个指针
n 个顶点的有向完全图中,包含有________条边。
9. 假定一个线性表为(12,23,74,55,63,40),若按 Key % 4 条件进行划分,使得
同一余数的元素成为一个子表,则得到的四个子表分别为
____________________________、___________________、__________________
邻接表如图 11 所示:
图 11
第 7 页 共 23 页
3. 用克鲁斯卡尔算法得到的最小生成树为: (1,2)3, (4,6)4, (1,3)5, (1,4)8, (2,5)10, (4,7)20
4. 见图 12
4
4
2
2
2
2
4
4
2
5
4
5
8
3
5
84
2
4
5
83
图 12
四、
阅读算法(每题 7 分,共 14 分)
2. void ABC(BTNode * BT) { if BT { ABC (BT->left); ABC (BT->right); cout<<BT->data<<' '; } } 该算法的功能是:
第 5 页 共 23 页
五、
算法填空(共 8 分)
二叉搜索树的查找——递归算法:
bool Find(BTreeNode* BST,ElemType& item) { if (BST==NULL) return false; //查找失败
选用 H(K)=K %9 作为散列函数,则散列地址为 1 的元素有( )个,
第 2 页 共 23 页
A.1
B.2
C.3
10. 设有 6 个结点的无向图,该图至少应有(
通图。
A.5
B.6
C.7
D.8
D.4 )条边才能确保是一个连
二、
填空题(每空 1 分,共 26 分)
1. 通常从四个方面评价算法的质量:_________、_________、_________和
入一个 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;
3、 栈的插入和删除操作在( )进行。
A 栈顶
B 栈底
C 任意位置 D 指定位置
域,其中有________个指针域是存放了地址,有________________个指针是空
指针。
6. 对于一个具有 n 个顶点和 e 条边的有向图和无向图,在其对应的邻接表中,
所含边结点分别有_______个和________个。
7. AOV 网是一种___________________的图。
8. 在一个具有 n 个顶点的无向完全图中,包含有________条边,在一个具有
4、 由权值分别为 11,8,6,2,5 的叶子结点生成一棵哈夫曼树,它的带权
路径长度为( )
A 24
B 71
C 48
D 53
二、 填空题(每空 1 分,共 32 分)
1、数据的逻辑结构被分为__________、 ___________ 、________和
________四种。
2、一种抽象数据类型包括______________和_____________两个部分。
_________。
2. 一个算法的时间复杂度为(n3+n2log2n+14n)/n2,其数量级表示为________。 3. 假定一棵树的广义表表示为 A(C,D(E,F,G),H(I,J)),则树中所
含的结点数为__________个,树的深度为___________,树的度为_________。
三、
运算题(每题 6 分,共 24 分)
1. 在如下数组 A 中链接存储了一个线性表,表头指针为 A [0].next,试写出该 线性表。 A 0 12 3 4 5 67
data