中国海洋大学2014-2015学年数据结构期末考试试卷
- 格式:docx
- 大小:19.78 KB
- 文档页数:6
中国海洋大学2007-2008学年第2学期期末考试试卷信息学院《数据结构》课程试题(B卷) 共 2 页第 1 页考试说明:本课程为闭卷考试,可携带文具(或本课程为开卷考试,可携带文具和资料),满分为:100 分。
要求:算法描述用C语言,对算法中用到的数据结构要加以说明描述。
一、判断题:正确的打√,错误的打×(每题2分,共20分)1.在单链表中,要访问某个节点,只要知道该结点的指针即可:因此,单链表是一种随机存取结构。
()2.快速排序的速度在所有排序方法中最快,而且所需附加空间也最少。
( )3、线性表可以看成是广义表的特例,如果广义表中的每个元素都是原子,则广义表便成为线性表。
()4.广义表中原子个数即为广义表的长度。
()5.哈希表的查找效率主要取决于哈希表造表时选取的哈希函数和处理冲突的方法。
()6.线索二叉树比二叉树较为容易添加结点。
()7.普里姆算法适合用于稠密图()8.以冒泡排序法排序n个数据,其效率是O(n2)()9.二叉树只有在二叉树只有一个根的情况下三种遍历结果相同。
()10.归并排序要求的辅助空间最多。
()二、解答下列各题(60 分,每小题12 分)1、对于输入关键字序列48,70,65,33,24,56,12,92建一棵平衡二叉树,画出过程(至少每次调整有一张,标出最小不平衡子树的根)。
2.若对序列(7,3,1,8,6,2,4,5)请写出起泡排序的第一趟结果和堆排序(小堆顶)初始堆。
3. 设有一组关键字{01,25,20,31,63,65,70,74,79,82},如果进行折半查找,则查找到每个关键字的所需要的比较次数分别是多少?并求出在等概率查找情况下ASL。
中国海洋大学2007-2008学年第2学期期末考试试卷信息学院《数据结构》课程试题(A卷) 共 2 页第 2 页4.已知树的先根访问序列为:GFKDAIEBCHJ。
树的后根次序访问序列为:DIAEKFCJHBG。
《数据结构》期末考试试卷试题及答案一、选择题(每题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)线性表:一个线性结构,其特点是数据元素之间存在一对一的线性关系。
注意事项:1、下面关于串的叙述中,哪一个是不正确的?( )A .串是字符的有限序列B .空串是由空格构成的串C .模式匹配是串的一种重要运算D .串既可以采用顺序存储,也可以采用链式存储 2、设无向图的顶点个数为n ,则该图最多有( )条边。
A .n-1B .n(n-1)/2C . n(n+1)/2D .0 3、以下数据结构中,( )是非线性数据结构。
A .树B .字符串C .队列D .栈 4、下面关于线性表的叙述中,错误的是哪一个?( )A .线性表采用顺序存储,必须占用一片连续的存储单元。
B .线性表采用顺序存储,便于进行插入和删除操作。
C .线性表采用链接存储,不必占用一片连续的存储单元。
D .线性表采用链接存储,便于插入和删除操作。
5、假设以数组A[m]存放循环队列的元素,其头尾指针分别为front 和rear ,则当前队列中的元素个数为( )。
A .(rear-front+m)%mB .rear-front+1C .(front-rear+m)%mD .(rear-front)%m6、在单链表指针为p 的结点之后插入指针为s 的结点,正确的操作是( )。
A .p->next=s; s->next=p->next;B .s->next=p->next; p->next=s;C .p->next=s; p->next=s->next;D .p->next=s->next; p->next=s; 7、设栈的输入序列是1,2,3,4,则( )不可能是其出栈序列。
A .1,2,4,3B .2,1,3,4C .1,4,3,2D .4,3,1,2, 8、广义表(a,(b,c),d,e )的表头和表尾分别为( )。
A .a 和(b,c),d,e B .(a )和(b,c),d,eC .a 和 ((b,c),d,e)D .(a) 和((b,c),d,e)9、栈和队都是( )A .顺序存储的线性结构B .链式存储的非线性结构C .限制存取点的线性结构D .限制存取点的非线性结构 10、从逻辑上可以把数据结构分为( )两大类。
中国海洋大学2014-2015学年第一学期期末考试试卷及参考答案信息科学与工程学院《软件工程》课程试题(A卷)考试说明:本课程为闭卷考试,可携带文具,满分为:100 分。
一、填空题(本大题共20个空,每空1分,共20分)(1)软件生命周期由、和三个时期组成,每个时期又可进一步划分成若干个阶段。
(2)可行性研究主要是从、和三个方面研究可行性。
(3)是输入、处理和输出图的简称。
(4)是对一个软件结构内不同模块之间互连程度的度量。
(5)结构程序设计中只使用、和3种基本的控制结构。
(6)软件维护主要包括、、和四种。
(7)用面向对象方法开发软件一般要建、、和三种模型。
(8)软件测试的目的是发现错误,通常把测试方法分成和两大类。
二、简答题(本大题共5小题,每小题6分,共30分)(1)请简要说明面向对象方法学的要点。
(2)请说明软件设计过程中应该遵循的基本原理。
(3)简述用例图的作用和包含的模型元素。
(4)问题空间和解空间有何区别?(5)请简要说明决定软件可维护性的因素。
三、条件测试可用于检查程序模块中所包含逻辑条件是否正确。
在布尔变量和关系操作符只出现一次且没有公共变量的情况下,BRO(Branch and Relational Operator)测试保证能发现条件中的分支和条件操作符错误。
考虑条件C1: (E1= E2) & (E3< E4),其中E1, E2, E3, E4是关系表达式,“&”表示逻辑“与”,“<”和“=”是关系运算符,为了检查C1中的关系操作符错误,请给出C1的条件约束,并给出求解过程(本题15分)。
四、PAD是问题分析图(problem analysis diagram)的英文缩写,它的基本符号如图一所示。
请使用PAD图重画图二中的程序流程图(本题15分)。
“数据结构”期末考试试题一、单选题(每小题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.当向一个小根堆插入一个具有最小值的元素时,该元素需要逐层——调整,直到被调整到——位置为止。
数据结构期末考试试题及答案数据结构期末考试试题及答案随着信息时代的到来,数据的处理和管理变得愈发重要。
数据结构作为计算机科学的基础课程之一,对于培养学生的编程思维和解决问题的能力具有重要意义。
数据结构期末考试是对学生掌握该课程知识的一次全面检验。
本文将为大家提供一些常见的数据结构期末考试试题及答案,希望能够对大家复习备考有所帮助。
1. 请解释什么是数据结构,并举例说明。
数据结构是指在计算机中组织和存储数据的方式。
它关注的是数据的逻辑关系和操作,而不仅仅是数据本身。
常见的数据结构有数组、链表、栈、队列、树等。
举例来说,数组是一种线性结构,它将相同类型的数据元素按照一定的顺序存储在一块连续的内存空间中,可以通过索引来访问和修改元素。
2. 请说明数组和链表的区别,并分别列举它们的优缺点。
数组和链表都是常见的线性数据结构,但它们在存储方式和操作上有所不同。
数组将元素存储在连续的内存空间中,通过索引可以直接访问和修改元素。
链表则通过节点和指针的方式将元素串联起来,每个节点包含数据和指向下一个节点的指针。
数组的优点是访问速度快,可以通过索引直接定位元素,适合随机访问。
缺点是插入和删除操作比较耗时,需要移动其他元素。
链表的优点是插入和删除操作简单高效,只需要修改指针即可,不需要移动其他元素。
缺点是访问速度较慢,需要遍历链表才能找到指定位置的元素。
3. 请解释什么是栈和队列,并分别列举它们的应用场景。
栈和队列都是常见的线性数据结构,它们在数据的插入和删除操作上有所不同。
栈是一种后进先出(LIFO)的数据结构,只允许在栈顶进行插入和删除操作。
队列是一种先进先出(FIFO)的数据结构,允许在队尾进行插入操作,在队头进行删除操作。
栈的应用场景有很多,比如函数调用栈、表达式求值、括号匹配等。
函数调用栈用于保存函数的局部变量和返回地址,保证函数的正确执行顺序。
表达式求值中,栈可以用于保存运算符和中间结果,实现正确的计算顺序。
2015年数据结构期末考试题及答案,推荐文档(word版可编辑修改) 编辑整理:尊敬的读者朋友们:这里是精品文档编辑中心,本文档内容是由我和我的同事精心编辑整理后发布的,发布之前我们对文中内容进行仔细校对,但是难免会有疏漏的地方,但是任然希望(2015年数据结构期末考试题及答案,推荐文档(word版可编辑修改))的内容能够给您的工作和学习带来便利。
同时也真诚的希望收到您的建议和反馈,这将是我们进步的源泉,前进的动力。
本文可编辑可修改,如果觉得对您有帮助请收藏以便随时查阅,最后祝您生活愉快业绩进步,以下为2015年数据结构期末考试题及答案,推荐文档(word版可编辑修改)的全部内容。
2012年数据结构期末考试题及答案一、选择题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.算法分析的目的是 C ,算法分析的两个主要方面是 A .(1)A.找出数据结构的合理性 B.研究算法中的输入和输出的关系C.分析算法的效率以求改进 C.分析算法的易读性和文档性(2)A.空间复杂度和时间复杂度 B.正确性和简明性C.可读性和文档性 D.数据复杂性和程序复杂性8.下面程序段的时间复杂度是O(n2) 。
一、填空题1. 【答案】集合、线性结构、树形结构、图状结构或网状结构【解析】相互之间存在一种或多种特定关系的数据元素的集合称为数据结构,根据数据元素之间关系的不同特性通常分出了以上四种逻辑结构。
2.【答案】插入和删除、后进现出(LIFO)【解析】考查的栈的定义及性质,队列的定义及性质也需要牢固掌握。
3. 【答案】2k-1【解析】考查二叉树的性质2。
4. 【答案】图【解析】根据图数据结构的特性。
5.【答案】有穷性、确定性、可行性、输入(0或多个)、输出(至少有1个)【解析】算法是特定问题的求解步骤的一种描述,其五个基本性质如上。
6.【答案】串的长度相等且两串中对应位置的字符也相等【解析】考查两个字符串相等的定义。
7.【答案】n2+1【解析】考查二叉树的性质3。
8.【答案】树内各结点的度【解析】考查树的度的定义。
9.【答案】入度、出度【解析】考查有向图中顶点度的定义。
10. 【答案】顺序存储、有序【解析】因为折半查找需要拿表中第mid(其中mid=(low+high)/2)个元素与查找的关键字进行比较,所以要求查找表需要能随机存取,因此,要求顺序存储;另外,实施折半查找的前提必须是有序表,顺序表不可以。
二、选择题1. 【答案】B【解析】根据具有n个顶点的无向完全图的边数为n(n-1)/2,代入公式即可。
2. 【答案】B【解析】在循环队列中队列满的条件是以牺牲一个存储空间为代价的,即当满足选项B时就判断该队列已满。
3. 【答案】D【解析】考查数据对象的定义。
4. 【答案】A、D【解析】无论是循环链表还是单链表都属于线性表的链式存储,所以选A、D。
邻接多重表属于图的存储结构,孩子链表属于树的存储结构。
5. 【答案】C【解析】考查栈的基本性质,选项C中a先于b入栈,因此出栈顺序a应该在b的后面。
6. 【答案】B、C【解析】考查完全二叉树的定义及二叉树的基本性质。
7. 【答案】A【解析】该有序表中有8个元素,因此,折半查找时,查找第8个元素,根据判定树可以获得需先后与第4、6、7、8个元素进行比较4次,所以选A。
《数据结构》期末考试试题及答案一、选择题(每题2分,共20分)1. 下列哪种数据结构是线性结构?A. 栈B. 树C. 队列D. 图答案:A2. 在计算机科学中,什么是最基本的数据结构?A. 数组B. 链表C. 栈D. 树答案:C3. 下列哪种操作的时间复杂度是O(1)?A. 在链表中插入元素B. 在数组中查找元素C. 在树中删除节点D. 在图中寻找最短路径答案:B4. 下列哪种数据结构常常用于实现栈和队列?A. 数组B. 链表C. 树D. 图答案:A5. 下列哪种数据结构是有序的?A. 栈B. 队列C. 链表D. 图答案:C二、填空题(每题2分,共20分)1. 在数据结构中,栈是一种后进先出(____)的数据结构。
答案:线性表2. 队列是一种先进先出(____)的数据结构。
答案:线性表3. 链表是一种____数据结构,由一系列节点组成。
答案:非线性4. 二叉树是一种特殊的树,它的每个节点最多有两个____。
答案:子节点5. 哈希表是通过____函数将关键字映射到表中的位置来访问数据。
答案:哈希三、判断题(每题2分,共20分)1. 树是一种线性结构。
()答案:错误2. 链表的插入和删除操作时间复杂度都是O(1)。
()答案:错误3. 图是一种线性结构。
()答案:错误4. 哈希表是一种基于顺序结构的的数据结构。
()答案:错误5. 在数据结构中,时间复杂度O(n)表示算法随着输入规模的增加而线性增长。
()答案:正确四、简答题(每题10分,共30分)1. 请简述栈和队列的特点和应用场景。
答案:栈是一种后进先出(LIFO)的数据结构,应用场景包括函数调用栈、表达式求值等。
队列是一种先进先出(FIFO)的数据结构,应用场景包括任务队列、缓冲区等。
2. 请简述链表的优缺点。
答案:链表的优点包括动态扩容、插入和删除操作时间复杂度为O(1)、可以方便地实现各种复杂数据结构。
缺点包括占用内存空间较大、不如数组支持随机访问。
《数据结构》期末考试试题及答案一、选择题(每题2分,共20分)1. 下列哪一个不是线性结构的基本特征?A. 有且只有一个根结点B. 每个结点最多有一个前驱和一个后继C. 有且只有一个叶子结点D. 有序对中第一个元素是根结点答案:C2. 在单链表中,存储元素的数据域称为元素的哪个部分?A. 指针域B. 数据域C. 结点域D. 头结点答案:B3. 在顺序存储结构中,数据元素之间的逻辑关系由哪个因素决定?A. 数据元素的存储顺序B. 数据元素的存储位置C. 数据元素的类型D. 数据元素的大小答案:A4. 下列哪种排序算法的时间复杂度不是O(nlogn)?A. 快速排序B. 归并排序C. 堆排序D. 冒泡排序答案:D5. 在二叉树中,具有度为2的结点的个数是n0,度为0的结点个数是n2,则有()。
A. n0 = n2 - 1B. n0 = n2 + 1C. n0 = n2D. n0 = n2 + 2答案:B6. 在线索二叉树中,哪个结点被称为线索结点?A. 有左子树的结点B. 有右子树的结点C. 既没有左子树也没有右子树的结点D. 具有左右子树的结点答案:C7. 在双向链表中,查找结点的时间复杂度是()。
A. O(1)B. O(n)C. O(nlogn)D. O(n^2)答案:B8. 在栈的操作中,下列哪个操作是非法的?A. 先进先出B. 后进先出C. 可以插入任意元素D. 可以删除任意元素答案:D9. 在顺序表中进行插入操作时,平均移动次数为()。
A. 0B. n/2C. nD. n-1答案:C10. 在下列排序算法中,哪个算法是不稳定的?A. 冒泡排序B. 快速排序C. 插入排序D. 归并排序答案:B二、填空题(每题2分,共20分)1. 线性表的顺序存储结构称为顺序表,其基本特点是()。
答案:元素顺序存储2. 在单链表中,每个结点包括两个域:数据域和()。
答案:指针域3. 在二叉树中,度为0的结点称为(),度为2的结点称为()。
中国海洋大学2014-2015学年第2学期期末考试试卷信息学院《数据结构》课程试题(A卷) 共4 页第1 页
考试说明:本课程为闭卷考试,满分为:100 分。
一、单项选择题(在每个小题的四个备选答案中,只有一个答案是正确的,请将正确答案的号码填在题干后的括号内,每空2分,共20分)
1. 用链式存储时,结点的存储地址()
A.必须是不连续的 B.连续与否均可
C.必须是连续的 D.和头结点的存储地址相连续
2. 设计一个判别表达式中左、右括号是否配对的算法,采用
数据结构最佳。
( )
A.线性表的顺序存储结构 B.栈
C.队列 D.线性表的链式存储结构
3. 广义表是的推广。
( )
A.数组 B.线性表
C.队列 D.树
4. 在一非空二叉树的中序遍历序列中,根节点右边的部分()
A.只有右子树上所有的结点
B.只有右子树上的部分结点
C.只有左子树上的部分节点
D.只有左子树上的所有节点
5. 深度为5的二叉树至多有个结点 ( )
A.16 B.32
C.31 D.10
中国海洋大学2007-2008学年第2学期期末考试试卷
信息学院《数据结构》课程试题(A卷) 共4 页第2 页。