电子科大15春《数据结构》在线作业123与答案
- 格式:pdf
- 大小:307.40 KB
- 文档页数:9
数据结构(本)复习题一、单项选择题(每小题2分,共30分)1.深度为5的完全二叉树共有20个结点,则第5层上有( )个结点(根所在结点为第一层)。
A.3B.8C.5D.62.已知一个图的边数为ii,则该图的所有顶点的度数之和为( )。
A.2mB.mC.2m+1D.m/23.数据结构中,与所使用的计算机无关的是数据的( )结构。
A.物理B.存储C.逻辑与物理D.逻辑4.链表所具备的特点是( )。
A.可以随机访问任一结点B.占用连续的存储空间C.插人删除不需要移动元素结点D.可以通过下标对链表进行直接访问5.线性表只要以( )方式存储就能进行折半查找。
A.链接B.顺序C.关键字有序的顺序D.二又树6.散列查找的原理是( )。
A.在待查记录的关键字值与该记录的存储位置之间建立确定的对应关系B.按待查记录的关键字有序的顺序方式存储C.按关键字值的比较进行查找D.基于二分查找的方法7.对n个元素进行冒泡排序若某趟冒泡中只进行了( )次元素间的交换,则表明序列已经排好序。
A.1B.2C.0D.n-18.排序过程中,每一趟从无序子表中将一个待排序的记录按其关键字的大小放置到已经排好序的子序列的适当位置,直到全部排好序为止,该排序算法是( )。
A.直接插入排序B.快速排序C.冒泡排序D.选择排序9.在对一组元素(64,48,106,33,25,82,70,55,93)进行直接插入排序时,当进行到要把第7个元素70插入到已经排好序的子表时,为找到插人位置,需进行( )次元素n的比较(指由小到大排序)。
A.6B.2C.3D.410.采用顺序查找法对长度为n的线性表进行查找(不采用表尾设监视哨的方法),最坏的情况下要进行( )次元素间的比较。
A.n+2B.nC.n-1D.n/211如图,若从顶点a出发按广度优先搜索法进行遍历,则可能得到的顶点序列为( )。
A.acebdgfB.abecdgfC.acfedgbD.abecfdg12.元素2,4,6,8按顺序依次进栈,则该栈的不可能输出序列是( )(进栈出栈可以交替进行)。
可编辑修改精选全文完整版国家开放大学(中央广播电视大学)2015年秋季学期“开放本科”期末考试数据结构(本)试题2016年1月一、单项选择题(每小题2分,共30分)1.对稀疏矩阵进行压缩存储,可采用三元组表,一个有10行的稀疏矩阵A共有97个零元素,其相应的三元组表共有3个元素。
该矩阵A有( )列。
A.8 C.7B.9 D.10答案:102.子串“acd”在主串“abdcacdefac”中的位置是( )。
A.3 C.7B.5 D.1答案:53.序列12,16,8,4按顺序依次进栈,按该栈的可能输出序列依次入队列,该队列的不可能输出序列是( )。
(进栈、出栈可以交替进行)。
A.16,12,8,4B.4,8,12,16C.8,4,16,12D.16,12,4,8答案:B.4,8,12,164.在一个不带头结点的链队中,假设f和r分别为队头和队尾指针,对该队列进行出队操作,并把结点的值保存在变量e中,其运算为( )。
A.e=f->data;r=r->nextB.e=f->data;r->next=rC.e=f->data;f=f->nextD.e=f一>data;f一>next=f答案:C.e=f->data;f=f->next5.数据的逻辑结构在计算机内存中的表示是( )。
A.给相关变量分配存储单元C.数据的逻辑结构B.数据的存储结构D.算法的具体体现答案:数据的存储结构6.以下说法正确的是( )。
A.线性表的链式存储结构必须占用连续的存储空间B.一种逻辑结构可以有不同的存储结构C.一种逻辑结构只能有唯一的存储结构D.线性表的顺序存储结构不必占用连续的存储空间答案:一种逻辑结构可以有不同的存储结构7.在一个单链表中要删除p所指结点的后继结点,可执行q=p一>next;和( )。
A.p一>next=q->nextB.p=q->nextC.p->next=qD.p->next=q答案:A.p一>next=q->next8.在数据结构和算法中,与所使用的计算机有关的是( )。
国家开放大学2023年春季学期期末统一考试数据结构(本)试题一、单项选择题(把合适的选项编号填写在括号内。
每小题3分,共45分)1.线性结构、树形结构、图形结构都是按数据的( )来分类的。
A.存储结构B.物理和存储结构C.物理结构D.逻辑结构2.在数据结构中,从逻辑上可以把数据结构分为( ).A.动态结构和静态结构B.紧凑结构和非紧凑结构C.内部结构和外部结构D.线性结构和非线性结构3.设有一个长度为n的顺序表,要删除第i个元素,则需移动元素的个数为( )。
A. iB. n-i-1C. n-iD. n-i+14.设有一个长度为10的顺序表,要在第3个元素之后插入一个元素,则需移动元素的个数为( ).A.3B.6C. 7D.85.一个队列的人队序列是10,20 ,30,40。
则队列的输出序列是( ).A.40,30,20,10B.10,20,30,40C.10.40,30,20D.30 ,20,40,106.在一棵二叉树中(其根结点编号为1),若编号为8的结点存在右孩子,则该右孩子的顺序编号为( )。
A.18B.16C.15D.177.队列的出队操作在( )进行。
A.队头B.队尾C.任意位置D.指定位置8.串函数index(a ,b)的功能是进行( )。
A.求子串B.串连接C.模式匹配D.求串长9.一个非空广义表的表头元素( )。
A.不可能是原子B.只能是子表C.只能是原子D.可以是子表或原子10.链表所具备的特点之一是( )。
A.可以随机访问任一结点B.需要占用连续的存储空间.C.插人元素的操作不需要移动元索D.删除元素的操作需要移动元素11.树中所有结点数等于所有结点的度加( )。
A.1B.0C. 2D. -112.在一个无向图G中,所有边数之和等于的所有顶点的度数之和( )倍。
A.1/2B. 1C.2D.413.对于一个具有4个顶点和5条边的无向图,若采用邻接表表示,则所有顶点邻接表中的结点总数为( )。
川大《数据结构2264》15春在线作业1答案
《数据结构2264》15春在线作业1
一、单选题(共25 道试题,共50 分。
)
1. 下面关于广义表的叙述中,不正确的是()。
A. 广义表可以是一个多层次的结构
B. 广义表至少有一个元素
C. 广义表可以被其他广义表所共享
D. 广义表可以是一个递归表
正确答案:B
2. 对于关键字序列()进行散列存储时,若选用H()=K%7作为散列函数,则散列地址为0的元素有()个。
A. 1
B. 2
C. 3
D. 4
正确答案:D
3. 对一棵有100个结点的完全二叉树按层编号,根结点编号为1,则编号为49的结点的父结点的编号为()。
A. 24
B. 5
C. 98
D. 99
正确答案:A
4. 有n个记录的文件,如关键字位数为d,基数为r,则基数排序共要进行()遍分配与收集。
A. n
B. d
C. r
D. n - d
正确答案:B
5. 对线性表进行二分法查找,其前提条件是()。
A. 线性表以链接方式存储,并且按关键码值排好序
B. 线性表以顺序方式存储,并且按关键码值的检索频率排好序
C. 线性表以顺序方式存储,并且按关键码值排好序
D. 线性表以链接方式存储,并且按关键码值的检索频率排好序正确答案:C
6. 以下数据结构中哪一个是非线性结构?()。
15春《软件技术基础》在线作业2一、单选题:1.下列哪个不是线性结构( )。
(满分:4)A. 链表B. 队列C. 串D. 树正确答案:D2.栈中输入A,B,C,D,E,F六个字符,出栈顺序是( )。
(满分:4)A. ABCDEFB. FEDCBAC. AFECBD. FABCDE正确答案:B3.( )不是操作系统关心的主要问题。
(满分:4)A. 管理计算机裸机B. 设计、提供用户程序与计算机硬件系统的界面C. 管理计算机系统资源D. 高级程序设计语言的编译器正确答案:D4.队列中输入A,B,C,D,E,F六个字符,出队列顺序是( )。
(满分:4)A. ABCDEFB. FEDCBAC. AFECBD. FABCDE正确答案:A5.已知某二叉树的前序序列是ABDC,中序序列是DBAC,问它的后序序列是( )。
(满分:4)A. 虚拟存储B. 地址变换与重定位C. 内存分配与回收D. 进程调度正确答案:D二、多选题:1.衡量一个算法的优劣有哪两个要素( )。
(满分:5)A. 难度B. 占用空间C. 人员投入D. 耗费时间正确答案:BD2.常用的页面淘汰算法有( )。
(满分:5)A. FIFOB. LRUC. LFUD. LLU正确答案:ABC3.进程控制原语包括( )。
(满分:5)A. 创建原语B. 撤销原语C. 阻塞原语D. 唤醒原语正确答案:ABCD4.段的保护包括( )。
(满分:5)A. 地址越界保护B. 存取控制保护C. 动态保护D. 静态保护正确答案:AB5.分时系统中作业的控制有哪些( )。
(满分:5)A. 命令驱动方式B. 菜单驱动方式C. 窗口环境D. 脱机控制正确答案:ABC6.数据的逻辑结构包括( )。
(满分:5)A. 线性结构B. 非线性结构C. 算数结构D. 几何结构正确答案:AB7.双链表的基本节点一般由以下拿几部分组成( ). (满分:5)A. 头指针B. 数据C. 尾指针D. 头节点正确答案:ABC8.目前常用的高级通信方式有( )。
电子科技《数据结构》在线作业1
单选题多选题判断题
一、单选题(共 16 道试题,共 48 分。
)
1. 在计算机内实现递归算法时所需的辅助数据结构是()。
A. 栈
B. 队列
C. 树
D. 图
-----------------选择:A
2. 对于只在表的首、尾两端进行插入操作的线性表,宜采用的存储结构为()。
A. 顺序表
B. 用头指针表示的单循环链表
C. 用尾指针表示的单循环链表
D. 单链表
-----------------选择:C
3. 判断两个串大小的基本准则是()。
A. 两个串长度的大小
B. 两个串中首字符的大小
C. 两个串中大写字母的多少
D. 对应的第一个不等字符的大小
-----------------选择:B
4. 在目标串T[0..n-1]=″xwxxyxy″中,对模式串P[0..m-1]=″xy″进行子串定位操作的结果是()。
A. 0
B. 2
C. 3
D. 5
-----------------选择:C
5. 栈和队列都是()。
A. 限制存取位置的线性结构
B. 顺序存储的线性结构
C. 链式存储的线性结构
D. 限制存取位置的非线性结构
-----------------选择:D
6. 设有两个串T和P,求P在T中首次出现的位置的串运算称作()。
A. 联接
B. 求子串
C. 字符定位
D. 子串定位
-----------------选择:D
7. 算法分析的目的是()。
数据结构试卷(一)一、单选题(每题 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.692D.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]的比较序列的下标依次为( 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的元素有(D)个A.1 B.2 C.3 D.410.设有6个结点的无向图,该图至少应有( A )条边才能确保是一个连通图。
A.5B.6C.7D.8二、填空题(每空1分,共26分)1.通常从四个方面评价算法的质量:正确性易读性强壮性和_高效率。
2.一个算法的时间复杂度为(n3+n2log2n+14n)/n2,其数量级表示为___0(n)_____。
数据结构作业及答案汇总数据结构是计算机科学中的一个重要概念,它涉及到组织和管理数据的方式和方法。
在学习数据结构的过程中,作业和答案总结是帮助我们巩固知识和理解的重要步骤。
本文将对数据结构作业及答案进行汇总,以便帮助读者更好地学习和掌握数据结构知识。
作业一:栈和队列1. 描述栈和队列的基本特点,并给出它们的应用场景。
栈是一种容器,它具有后进先出(LIFO)的特点。
常见的应用场景有程序调用栈、浏览器的前进后退功能等。
队列是一种容器,它具有先进先出(FIFO)的特点。
常见的应用场景有任务调度、消息队列等。
2. 设计一个栈,使其具有查找最小元素的功能。
给出实现代码和分析时间复杂度。
3. 设计一个队列,使其具有查找最大元素的功能。
给出实现代码和分析时间复杂度。
作业二:链表1. 描述链表的基本特点,并给出它的应用场景。
链表是一种数据结构,它由一系列节点组成。
每个节点包含数据和指向下一节点的指针。
常见的应用场景有实现链表、存储大量数据等。
2. 设计一个单向链表,使其具有反转链表的功能。
给出实现代码和分析时间复杂度。
3. 设计一个双向链表,使其具有插入和删除节点的功能。
给出实现代码和分析时间复杂度。
作业三:树1. 描述树的基本特点,并给出它的应用场景。
树是一种非线性数据结构,它由节点和边组成。
常见的应用场景有文件系统、数据库索引等。
2. 设计一个二叉树,实现遍历功能(前序、中序、后序)。
给出实现代码和分析时间复杂度。
3. 设计一个平衡二叉树,使其具有快速查找节点的功能。
给出实现代码和分析时间复杂度。
作业四:图1. 描述图的基本特点,并给出它的应用场景。
图是一种由顶点和边组成的数据结构,边表示顶点之间的关系。
常见的应用场景有社交网络、地图导航等。
2. 设计一个有向图,实现深度优先搜索(DFS)算法。
给出实现代码和分析时间复杂度。
3. 设计一个无向图,实现广度优先搜索(BFS)算法。
给出实现代码和分析时间复杂度。
答案汇总:在本文中,我们对栈、队列、链表、树和图这几个常见的数据结构进行了作业设计和答案汇总。
电子科技大学15春《数据结构》在线作业2满分答案15春《数据结构》在线作业2一,单选题1. 高度为5的完全二叉树中含有的结点数至少为()。
A. 16B. 17C. 31D. 32?正确答案:A2. 二叉树中第5层上的结点个数最多为()。
A. 8B. 15C. 16D. 32?正确答案:C3. 在一个具有n个顶点的有向图中,所有顶点的出度之和为Dout ,则所有顶点的入度之和为()。
A. DoutB. Dout-1C. Dout+1D. n?正确答案:A4. 在以单链表为存储结构的线性表中,数据元素之间的逻辑关系用()。
A. 数据元素的相邻地址表示B. 数据元素在表中的序号表示C. 指向后继元素的指针表示D. 数据元素的值表示?正确答案:C5. 已知栈的最大容量为4。
若进栈序列为1,2,3,4,5,6,且进栈和出栈可以穿插进行,则可能出现的出栈序列为()。
A. 5,4,3,2,1,6B. 2,3,5,6,1,4C. 3,2,5,4,1,6D. 1,4,6,5,2,3?正确答案:C6. 若算法中语句的最大频度为T(n)=2006n+6n㏒n+29㏒2n,则其时间复杂度为()。
A. O(㏒n)B. O(n)C. O(n㏒n)D. O(㏒2n)?正确答案:C7. 下面程序段的时间复杂度为()。
for (i=0; i11. 判断两个串大小的基本准则是()。
A. 两个串长度的大小B. 两个串中首字符的大小C. 两个串中大写字母的多少D. 对应的第一个不等字符的大小?正确答案:B12. 已知一棵含50个结点的二叉树中只有一个叶子结点,则该树中度为1的结点个数为()。
A. 0B. 1C. 48D. 49?正确答案:D13. 在头指针为head且表长大于1的单循环链表中,指针p指向表中某个结点,若p->next->next= head,则()。
A. p指向头结点B. p指向尾结点C. *p的直接后继是头结点D. *P的直接后继是尾结点?正确答案:D14. 与线性表相比,串的插入和删除操作的特点是()。
第1章绪论5.选择题:CCBDCA6.试分析下面各程序段的时间复杂度。
(1)O(1)(2)O(m*n)(3)O(n2)(4)O(log3n)(5)因为x++共执行了n—1+n—2+……+1= n(n—1)/2,所以执行时间为O(n2)(6)O(n)第2章线性表1.选择题babadbcabdcddac2.算法设计题(6)设计一个算法,通过一趟遍历在单链表中确定值最大的结点。
ElemType Max (LinkList L ){if(L—〉next==NULL) return NULL;pmax=L-〉next;//假定第一个结点中数据具有最大值p=L-〉next—>next;while(p != NULL ){//如果下一个结点存在if(p->data > pmax—>data) pmax=p;p=p->next;}return pmax-〉data;(7)设计一个算法,通过遍历一趟,将链表中所有结点的链接方向逆转,仍利用原表的存储空间.void inverse(LinkList &L) {// 逆置带头结点的单链表Lp=L-〉next;L->next=NULL;while (p){q=p—>next;// q指向*p的后继p->next=L—>next;L—>next=p; // *p插入在头结点之后p = q;}}(10)已知长度为n的线性表A采用顺序存储结构,请写一时间复杂度为O(n)、空间复杂度为O(1)的算法,该算法删除线性表中所有值为item的数据元素.[题目分析]在顺序存储的线性表上删除元素,通常要涉及到一系列元素的移动(删第i个元素,第i+1至第n个元素要依次前移)。
本题要求删除线性表中所有值为item的数据元素,并未要求元素间的相对位置不变。
因此可以考虑设头尾两个指针(i=1,j=n),从两端向中间移动,凡遇到值item的数据元素时,直接将右端元素左移至值为item的数据元素位置。
国家开放大学电大《数据结构》网络课判断题题库及答案判断题题目21数据元素可以有一个或多个数据项组成。
选择一项:对错题目22数据元素之间的抽象关系称为物理结构。
选择一项:对错题目23数据的逻辑结构在计算机中的表示称为逻辑结构。
选择一项:对错题目24数据的逻辑结构是与存储该结构的计算机相关的。
选择一项:对错题目25数据结构中,元素之间存在多对多的关系称为树状结构。
选择一项:对错题目26通常可以把一本含有不同章节的书的目录结构抽象成线性结构。
选择一项:对错题目27通常可以把某城市中各公交站点间的线路图抽象成树型结构。
选择一项:对错题目28设有一个不带头结点的单向循环链表,结点的指针域为next,指针p指向尾结点,现要使p指向第一个结点,可用语句p=p->next;。
选择一项:对错题目29设有一个单向链表,结点的指针域为next,头指针为head,p指向尾结点,为了使该单向链表改为单向循环链表,可用语句p->next=head 。
选择一项:对错题目30设有一个单向循环链表,结点的指针域为next,头指针为head,指针p指向表中某结点,若逻辑表达式p->next==head;的结果为真,则p所指结点为尾结点。
选择一项:对错题目31要在一个单向链表中p所指向的结点之后插入一个s所指向的新结点,若链表中结点的指针域为next,可执行p->next=s; s->next= p->next;的操作。
选择一项:对错题目32要在一个单向链表中删除p所指向的结点,已知q指向p所指结点的直接前驱结点,若链表中结点的指针域为next,则可执行q->next= p->next;选择一项:对错题目33要在一个带头结点的单向循环链表中删除头结点,得到一个新的不带头结点的单向循环链表,若结点的指针域为next,头指针为head,尾指针为p,则可执行head=head-> next; p->next=head;。
电子科技大学智慧树知到“计算机应用技术”《数据结构》网课测试题答案(图片大小可自由调整)第1卷一.综合考核(共15题)1.若算法中语句的最大频度为T(n)=2006n+6nlogn+29log2n,则其时间复杂度为()。
A.O(logn)B.O(log2n)C.O(nlogn)D.O(n)2.需要分配较大空间,插入和删除不需要移动元素的线性表,其存储结构是()。
A、单链表B、静态链表C、线性链表D、顺序存储结构3.通常将链串的结点大小设置为大于1是为了()。
A、提高串匹配效率B、提高存储密度C、便于插入操作D、便于删除操作4.在二叉树的第i层上至多可以有2i个结点。
()A.正确B.错误5.产生冲突现象的两个关键字称为该散列函数的同义字。
()A.正确B.错误6.若算法中语句的最大频度为T(n)=2006n+6n㏒n+29㏒2n,则其时间复杂度为()。
A、O(㏒n)B、O(n)C、O(n㏒n)D、O(㏒2n)7.栈下溢是指在栈空时进行出栈操作。
()A、错误B、正确8.数据结构是()。
A、一种数据类型B、数据的存储结构C、一组性质相同的数据元素的集合D、相互之间存在一种或多种特定关系的数据元素的集合9.对某二叉树进行先序遍历的结果为ABDEFC,中序遍历的结果为DBFEAC,则后序遍历的结果是()。
A、DBFEACB、DFEBCAC、BDFECAD、BDEFAC10.对任何一棵二叉树,如果其终端结点数为n0,度为2的结点数为n2,则n0=n2+1。
()A.正确B.错误11.抽象数据类型是指数据逻辑结构及与之相关的操作。
()A.正确B.错误12.栈下溢是指在栈空时进行出栈操作。
()A.正确B.错误13.深度为15的满二叉树上,第11层有2∧11个结点。
()A.正确B.错误14.两个串相等的充分必要条件是两个串的长度相等且字母相同。
()A、错误B、正确15.一棵非空的二叉树的先序遍历序列与后序遍历序列正好相反,则该二叉树一定满()。
电子科技大学网络教育-数据结构(专科)试题及答案(1)一、单选,共30题/每题2.5分/共75.0分:1、计算机算法必须五个特性,即输入、输出和()。
A、确定性、有穷性和稳定性B、可行性、可移植性和可扩充性C、可行性、确定性和有穷性D、易读性、稳定性和安全性得分:2.52、关于冒泡排序的说法正确的有()①.属于交换排序②.在整个排序过程中,最多执行n-1遍③.属于选择排序④.在某一趟排序过程没有气泡交换,则可终止该算法A、①②B、②③④C、①②④D、②③得分:2.53、下面程序段的时间复杂度是()。
for(i=0;i<m;i++)for(j=0;j<n;j++)a[i][j]=i*j;A、O(m+n)B、O(n2)C、O(m*n)D、O(m2)得分:2.54、设n、m为一棵二叉树上的两个结点,在中根遍历时,n在m之前的条件是()。
A、n是m的祖先B、n是m的子孙C、n在m左方D、n在m右方得分:2.55、假定一个链栈的栈顶指针用其所长top表示,当p所指向的节点进栈时,执行的操作是()。
A、top=p->p;p->next=top;B、p->next=top->next;top->next =p;C、p->next=top;top=top->next;D、p->next=top;top=p;得分:2.56、在决定选取何种存储结构时,一般不考虑()。
A、所使用编辑语言实现这种的便利性B、结点个数C、对数据的运算D、各结构的值得分:2.57、若X是二叉中序线索树中一个有左孩子的结点,且X不为根,则X的前驱为()。
A、X的双亲B、X的左子树中最右叶结点C、X的左子树中最右结点D、X的右子树中最左的结点得分:2.58、设栈S和队列Q的初始状态为空,元素e1、e2、e3、e4、e5和e6依次进入栈S,一个元素出栈后即进入Q,若6个元素出队的序列是e2、e4、e3、e6、e5和e1,则栈S的容量至少应该是()。
杭州电子科技大学数据结构数据结构试题及答案一、选择题1. 下面哪一个不是线性结构的特点?()A. 有且只有一个根结点B. 每个结点最多有一个前驱,最多有一个后继C. 至少有一个结点D. 结构中任意两个结点都可以相邻答案:D解析:线性结构的特点包括有且只有一个根结点,每个结点最多有一个前驱,最多有一个后继,至少有一个结点。
而结构中任意两个结点都可以相邻并不是线性结构的特征。
2. 下面关于栈的叙述中,正确的是()A. 栈是一种先进先出的线性表B. 栈是一种后进先出的线性表C. 栈是一种随机存取的线性表D. 栈是一种非线性结构答案:B解析:栈是一种后进先出的线性表,即最后进入的元素最先被删除。
二、填空题3. 一个栈的初始状态为空。
首先将元素5、3、2依次进栈,然后退栈一次,再进栈一个元素6,然后再退栈三次,此时栈顶元素的值为______。
答案:2解析:元素进栈的顺序是5、3、2,退栈一次后栈顶元素是3,再进栈一个元素6,栈顶元素变为6,退栈三次后,栈顶元素是2。
4. 设栈S和队列Q的初始状态都为空。
元素a、b、c、d、e依次进栈S,然后再依次出栈,并将出栈的元素放入队列Q 中,则队列Q的元素顺序是______。
答案:e d c b a解析:元素a、b、c、d、e依次进栈后,出栈顺序是e、d、c、b、a,因此队列Q的元素顺序也是e、d、c、b、a。
三、判断题5. 在链表中,存储结点包含数据域和指针域两部分。
()答案:正确解析:链表中的每个存储结点确实包含数据域和指针域两部分,其中数据域存储元素值,指针域存储下一个结点的地址。
6. 二分查找法适用于顺序存储的有序表。
()答案:正确解析:二分查找法只适用于顺序存储的有序表,因为它是通过比较中间元素与目标值的大小来逐步缩小查找范围的。
四、应用题7. 设有一个长度为12的线性表,元素依次为(a1, a2, a3, ..., a12),采用二分查找法查找元素a7,请写出查找过程。
2023年7月国开电大本科《数据结构》期末考试试题及答案试题部分1. 请简述数据结构的定义及其作用。
2. 什么是栈和队列?请分别描述它们的特点和应用场景。
3. 字符串是一种常见的数据类型,请列举至少两种常见的字符串操作方法,并解释它们的作用。
4. 请说明二叉树的定义和特点,并给出一个二叉树的示例。
5. 简要描述图的基本概念,并给出一个使用邻接矩阵表示图的例子。
6. 请解释深度优先搜索(DFS)和广度优先搜索(BFS)算法的原理,并说明它们在图的遍历中的应用。
7. 树的遍历是指按照一定顺序访问树中的所有节点。
请解释前序遍历、中序遍历和后序遍历的概念。
8. 请解释散列函数的作用和原理,并说明散列表在实际中的应用。
9. 简要介绍至少两种排序算法,并分别说明它们的时间复杂度。
10. 简述动态规划算法的原理及应用场景。
答案部分1. 数据结构是指数据元素之间的关系,以及对数据元素的操作。
它的作用是组织和存储数据,以便高效地访问和操作。
2. 栈是一种只能在一端进行插入和删除操作的线性数据结构,特点是后进先出(LIFO)。
它常用于括号匹配、表达式求值等场景。
队列是一种只能在一端插入,在另一端删除的线性数据结构,特点是先进先出(FIFO)。
它常用于任务调度、缓存管理等场景。
3. 常见的字符串操作方法包括字符串连接、子串查找。
字符串连接用于将两个字符串合并为一个字符串。
子串查找用于在一个字符串中找到特定子串的位置或判断子串是否存在。
4. 二叉树是一种特殊的树结构,每个节点最多有两个子节点,分别称为左子节点和右子节点。
它的特点是具有递归的结构,可以用于实现排序、查找等功能。
例如,下图是一个二叉树的示例:A/ \B C/ \D E5. 图是由节点和边组成的一种数据结构,节点表示实体,边表示节点之间的关系。
邻接矩阵可以用于表示图结构,矩阵的行和列分别表示节点,矩阵中的值表示节点之间的关系。
例如,下面是一个使用邻接矩阵表示的图的例子:| A | B | C |--|---|---|---|A| 0 | 1 | 1 |B| 1 | 0 | 1 |C| 1 | 1 | 0 |6. 深度优先搜索(DFS)和广度优先搜索(BFS)是图的遍历算法。
最新国家开放大学电大《数据结构》期末题库及答案考试说明:本人针对该科精心汇总了历年题库及答案,形成一个完整的题库,并且每年都在更新。
该题库对考生的复习、作业和考试起着非常重要的作用,会给您节省大量的时间。
做考题时,利用本文档中的查找工具,把考题中的关键字输到查找工具的查找内容框内,就可迅速查找到该题答案。
本文库还有其他网核及教学考一体化答案,敬请查看。
《数据结构》题库及答案一一、单项选择题1. 给定有n个元素的向量,建立一个有序单链表的时间复杂度是( C )。
A. O(1)B. O(n)C. O(n2)D. O(nlog2n)2. 带表头的双向循环链表的空表满足( B )。
A. first=NULL;B. first->rLink==firstC. first->lLink==NULLD. first->rLink==NULL3. 栈的插入和删除操作在( A )进行。
A. 栈顶B. 栈底C. 任意位置D. 指定位置4. 在一个顺序存储的循环队列中,队头指针指向队头元素的( A )位置。
A. 前一个B. 后一个C. 当前D. 后面5. 假定一个顺序存储的循环队列的队头和队尾指针分别为front和rear,则判断队空的条件为( D )。
A. front+1 == rearB. rear+1 == frontC. front == 0D. front == rear6. 设链式栈中结点的结构为(data, link),且top是指向栈顶的指针。
若想摘除链式栈的栈顶结点,并将被摘除结点的值保存到x中,则应执行( A )操作。
A. x=top->data; top=top->link;B. top=top->link; x=top->data;C. x=top; top=top->link;D. x=top->data;7. 为增加内存空间的利用率和减少溢出的可能性, 由两个栈共享一块连续的内存空间时, 应将两栈的( D )分别设在这块内存空间的两端。
2015福师《数据结构概论》在线作业一90分一、单选题(共 25 道试题,共 50 分。
)V1. 已知广义表L=((x,y,z),a,(u,t,w)),从L表中取出原子项t的运算是()。
A. head(tail(tail(L)))B. tail(head(head(tail(L))))C. head(tail(head(tail(L))))D. head(tail(head(tail(tail(L)))))满分:2 分2. 下列排序算法中,占用辅助空间最多的是:( )A. 归并排序B. 快速排序C. 希尔排序D. 堆排序满分:2 分3. 由3 个结点可以构造出多少种不同的二叉树()A. 2B. 3C. 4D. 5满分:2 分4. 具有12个关键字的有序表,折半查找的平均查找长度()A. 3.1B. 4C. 2.5D. 5满分:2 分5. 数组A[0..4,-1..-3,5..7]中含有元素的个数()。
A. 55B. 45C. 36D. 16满分:2 分6. 设有一个10阶的对称矩阵A,采用压缩存储方式,以行序为主存储,a11为第一元素,其存储地址为1,每个元素占一个地址空间,则a85的地址为()A. 13B. 33C. 18D. 40满分:2 分7. 树的后根遍历序列等同于该树对应的二叉树的()A. 先序序列B. 中序序列C. 后序序列D. 都不正确满分:2 分8. 下面的程序段中,对x的赋值语句的频度为()FOR i:=1 TO n DOFOR j:=1 TO n DO x:=x+1;A. O(2n)B. O(n)C. O(n2)D. O(log2n)满分:2 分9. 对关键码序列28,16,32,12,60,2,5,72快速排序,从小到大一次划分结果为()A. (2,5,12,16)26(60,32,72)B. (5,16,2,12)28(60,32,72)C. (2,16,12,5)28(60,32,72)D. (5,16,2,12)28(32,60,72)满分:2 分10. 从未排序序列中依次取出一个元素与已排序序列中的元素依次进行比较,然后将其放在已排序序列的合适位置,该排序方法称为()排序法。
在线作业一:一、单选题(共16 道试题,共48 分。
)1. 已知指针p和q分别指向某单链表中第一个结点和最后一个结点。
假设指针s指向另一个单链表中某个结点,则在s所指结点之后插入上述链表应执行的语句为()。
A. q->next=s->next;s->next=pB. s->next=p;q->next=s->nextC. p->next=s->next;s->next=qD. s->next=q;p->next=s->next正确答案:A2. 高度为5的完全二叉树中含有的结点数至少为()。
A. 16B. 17C. 31D. 32正确答案:A3. 设有两个串T和P,求P在T中首次出现的位置的串运算称作()。
A. 联接B. 求子串C. 字符定位D. 子串定位正确答案: D4. 对于哈希函数H(key)=key%13,被称为同义词的关键字是()。
A. 35和41B. 23和39C. 15和44D. 25和51正确答案:D5. 算法分析的目的是()。
A. 辨别数据结构的合理性B. 评价算法的效率C. 研究算法中输入与输出的关系D. 鉴别算法的可读性正确答案:B6. 在头指针为head且表长大于1的单循环链表中,指针p指向表中某个结点,若p->next->next=head,则()。
A. p 指向头结点B. p 指向尾结点C. *p 的直接后继是头结点D. *P 的直接后继是尾结点正确答案:D7. 数据结构是()A. 一种数据类型B. 数据的存储结构C. 一组性质相同的数据元素的集合D. 相互之间存在一种或多种特定关系的数据元素的集合正确答案:D8.采用两类不同存储结构的字符串可分别简称为()。
A. 主串和子串B. 顺序串和链串C. 目标串和模式串D. 变量串和常量串正确答案:B9.已知函数Sub(s,i,j)的功能是返回串s中从第i个字符起长度为j的子串,函数Scopy(s,t)的功能为复制串t到s。
若字符串S=″SCIENCESTUDY″,则调用函数Scopy(P,Sub(S,1,7))后得到()。
A. P=″SCIENCE″B. P=″STUDY″C. S=″SCIENCE″D. S=″STUDY″正确答案:A10.在头指针为head且表长大于1的单循环链表中,指针p指向表中某个结点,若p->next->next= head,则()。
A. p 指向头结点B. p 指向尾结点C. *p 的直接后继是头结点D. *P 的直接后继是尾结点正确答案:D11.若一棵二叉树有11个叶子结点,则该二叉树中度为2的结点个数是()。
A. 10B. 11C. 12D. 不确定的正确答案:A12.下面程序段的时间复杂度是()。
for(i=0;i<n;i++) for(j=1;j<m;j++) A[i][j]=0;A. O(n)B. O(m+n+1)C. O(m+n)D. O(m*n)正确答案:D13.在线性表的下列运算中,不改变数据元素之间结构关系的运算是()。
A. 插入B. 删除C. 排序D. 定位正确答案: D14. 在计算机内实现递归算法时所需的辅助数据结构是()。
A. 栈B. 队列C. 树D. 图正确答案:A15. 在以单链表为存储结构的线性表中,数据元素之间的逻辑关系用()。
A. 数据元素的相邻地址表示B. 数据元素在表中的序号表示C. 指向后继元素的指针表示D. 数据元素的值表示正确答案: C16. 对于只在表的首、尾两端进行插入操作的线性表,宜采用的存储结构为()。
A. 顺序表B. 用头指针表示的单循环链表C. 用尾指针表示的单循环链表D. 单链表正确答案:C二、多选题(共 2 道试题,共8 分。
)1. 算法以下几种特性()。
A. 有穷性B. 确定性C. 可行性D. 输入和输出正确答案:ABCD2. 一个好的算法有(ABCD )设计要求。
A. 正确性B. 可读性C. 健壮性D. 效率与低存储量要求正确答案:ABCD三、判断题(共22 道试题,共44 分。
)1. 二叉树中的叶子结点就是二叉树中没有左右子树的结点。
A. 错误B. 正确正确答案:B2. 在队列中,允许进行删除操作的一端称为队尾。
A. 错误B. 正确正确答案: B3. 假设以S和X分别表示进栈和退栈操作,则对输入序列a,b,c,d,e进行一系列栈操作SSXSXSSXXX之后,得到的输出序列为a b b c c d d e d c。
A. 错误B. 正确正确答案:A4. 空串的长度是0 A. 错误B. 正确正确答案:B5. 数据的逻辑结构在计算机存储器内的表示,称为数据的逻辑结构。
A. 错误B. 正确正确答案: A6. 深度为15的满二叉树上,第11层有2^11个结点。
A. 错误B. 正确正确答案:A7. 如果入栈序列是1,3,5,…,97,99,且出栈序列的第一个元素为99,则出栈序列中第30 个元素为47。
A. 错误B. 正确正确答案:B8. 字符串“sgabacbadfgbacst” 中存在有6个与字符串“ba”相同的子串 A. 错误B. 正确正确答案:A9. 假设以行优先顺序存储三维数组A[5][6][7],其中元素A[0][0][0]的地址为1100,并且每个元素占2个存储单元,则A[4][3][2]的地址是1264。
A. 错误 B. 正确正确答案:A10. 当问题的规模n趋向无穷大时,算法执行时间T(n)的数量级被称为算法的时间复杂度。
A. 错误B. 正确正确答案:B11. 一棵含999个结点的完全二叉树的深度为12 A. 错误B. 正确正确答案:A12. 在队列中,允许进行插入操作的一端称为队头。
A. 错误B. 正确正确答案:B13.若一棵满三叉树中含有121个结点,则该树的深度为6。
A. 错误B. 正确正确答案: A14. 产生冲突现象的两个关键字称为该散列函数的同义字。
A. 错误B. 正确正确答案:B15. 在二叉树的第i层上至多可以有2i个结点。
A. 错误B. 正确正确答案:A16. 给出不同的输入序列建造二叉排序树,一定得到不同的二叉排序树。
A. 错误B. 正确正确答案:A17. 已知指针p指向某单链表中的一个结点,则判别该结点有且仅有一个后继结点的条件是p->next->next==null。
A. 错误B. 正确正确答案:B18. 若进栈序列为a,b,c,且进栈和出栈可以穿插进行,则可能出现6个不同的出栈序列。
A. 错误B. 正确正确答案:A19. 在一个长度为n的循环链表中,删除其元素值为x的结点的时间复杂度为O(n)。
A. 错误B. 正确正确答案:B20. 在最好和最坏情况下的时间复杂度均为O(nlogn)且稳定的排序方法是堆排序。
A. 错误B. 正确正确答案: A21. 二叉树中最多只有两棵子树,并且有左右之分。
A. 错误B. 正确正确答案: B22. 不含任何字符的串称为空串。
A. 错误B. 正确正确答案:B在线作业二:一、单选题(共16 道试题,共48 分。
)1. 高度为5 的完全二叉树中含有的结点数至少为()。
A. 16B. 17C. 31D. 32正确答案:A2. 二叉树中第5 层上的结点个数最多为()。
A. 8B. 15C. 16D. 32正确答案:C3. 在一个具有n 个顶点的有向图中,所有顶点的出度之和为Dout ,则所有顶点的入度之和为()。
A. DoutB. Dout-1C. Dout+1D. n正确答案:A4. 在以单链表为存储结构的线性表中,数据元素之间的逻辑关系用()。
A. 数据元素的相邻地址表示B. 数据元素在表中的序号表示C. 指向后继元素的指针表示D. 数据元素的值表示正确答案:C5. 已知栈的最大容量为4。
若进栈序列为1,2,3,4,5,6,且进栈和出栈可以穿插进行, 则可能出现的出栈序列为()。
A. 5,4,3,2,1,6B. 2,3,5,6,1,4C. 3,2,5,4,1,6D. 1,4,6,5,2,3正确答案:C6. 若算法中语句的最大频度为T(n)=2006n+6n ㏒n+29 ㏒2n,则其时间复杂度为()。
A. O(㏒n)B. O(n)C. O(n ㏒n)D. O(㏒2n)正确答案:C7. 下面程序段的时间复杂度为()。
for (i=0; i<m; i++) for (j=0; j<n; j++) A[i][j]=i*j;A. O (m2)B. O (n2)C. O (m*n)D. O (m+n)正确答案:C8.采用两类不同存储结构的字符串可分别简称为()。
A. 主串和子串B. 顺序串和链串C. 目标串和模式串D. 变量串和常量串正确答案:B9.对于只在表的首、尾两端进行插入操作的线性表,宜采用的存储结构为()。
A. 顺序表B. 用头指针表示的单循环链表C. 用尾指针表示的单循环链表D. 单链表正确答案:C10.一棵含18个结点的二叉树的高度至少为()。
A. 3B. 4C. 5D. 6正确答案:C11.判断两个串大小的基本准则是()。
A. 两个串长度的大小B. 两个串中首字符的大小C. 两个串中大写字母的多少D. 对应的第一个不等字符的大小正确答案:B12.已知一棵含50个结点的二叉树中只有一个叶子结点,则该树中度为1的结点个数为()。
A. 0B.1C. 48D. 49正确答案:D13.在头指针为head且表长大于1的单循环链表中,指针p指向表中某个结点,若p->next->next= head,则()。
A. p 指向头结点B. p 指向尾结点C. *p 的直接后继是头结点D. *P 的直接后继是尾结点正确答案:D14. 与线性表相比,串的插入和删除操作的特点是()。
A. 通常以串整体作为操作对象B. 需要更多的辅助空间C. 算法的时间复杂度较高D. 涉及移动的元素更多正确答案:A15. 抽象数据类型的三个组成部分分别为()。
A. 数据对象、数据关系和基本操作B. 数据元素、逻辑结构和存储结构C. 数据项、数据元素和数据类型D. 数据元素、数据结构和数据类型正确答案:A16. 若进栈序列为1,2,3,4,5,6,且进栈和出栈可以穿插进行,则可能出现的出栈序列为()。
A. 3,2,6,1,4,5B. 3,4,2,1,6,5C. 1,2,5,3,4,6D. 5,6,4,2,3,1正确答案:B二、多选题(共 2 道试题,共8 分。
)1. 构造最小生成树的两个基本算法是()。
A. 普里姆算法B. 克鲁斯卡尔算法C. 迪杰斯特拉算法D. 哈希算法正确答案:AB2. 由于排序过程中涉及的存储器不同,可以将排序方法分为()。