武汉理工数据结构考试试题
武汉理工大学852数据结构考研真题试题2010年
武汉理工大学 2010年数据结构研究生入学考试试题一、选择题(在提供的4个答案中选择1-4个正确的答案)(20分,每小题2分)(1)数据结构研究的内容包括A.数据的逻辑结构 B.数据的存储结构 C.数据的运算 D.数据的定义(2)评价一个算法的优劣可能涉及以下哪些方面A.正确性B.可读性C.健壮性D.时间复杂性和空间复杂性(3)线性表的两种存储结构是:A.内部结构和外部结构B.紧凑结构和非紧凑结构C.线性结构和非线性结构D.顺序结构和非顺序结构(4)4.队列操作的原则是:A.先进先出B.后进先出C.先进后出D.不进不出(5)二叉树的遍历方法有:A.先序遍历二叉树 B.中序遍历二叉树C.后序遍历二叉树 D.层次遍历二叉树(6)如果结点A有3个兄弟, B是A的双亲结点, 则B的度是:A.3 B.4 C.0 D.2(7)若模式串为 “abcabcac”, 则next[j]= ,j=1..8A.01112312 B.01112345 C.11112312 D.11112345(8)处理冲突的方法有:A.线性探测法 B. 除留余数法 C.链地址法 D.折叠法(9)将一组任意排列的数据重新排列成从小到大的有序序列。
哪些算法可以实现该功能A.拓扑排序 B.SHELL排序 C.快速排序 D.归并排序(10)下列各项中属于逻辑结构的是A. 无向连通网B. 邻接矩阵C. 邻接表D. 有向无环图二、算法分析与设计题(20分)阅读下列算法:#define MAXSIZE 10000void ins(int a[], int&n, int i, int e){ // 在线性表a[1..n]的第i处插入新元素eint j;if (n==MAXSIZE) error(“线性表溢出\n”);else if (i<1 || i>n+1) error(“插入位置错误\n”);else { for (j=n;j>=i;j--)a[j+1]=a[j];a[i]=e;n++;}}(11)该算法的时间复杂度是多少?(2分)(12)算法分析,元素的移动次数与哪些因素有关?(4分)。
武汉理工大学数据库期末考试试题06级
武汉理工大学数据库期末考试试题06级武汉理工大学数据库期末考试试题06级武汉理工大学考试试题纸( B 卷)课程名称题号一二20 数据库与信息系统三15 四50 五六七专业班级信息0601-04 八九十总分100题分15备注: 学生不得在试题纸上答题(含填空题、选择题等客观题)一、填空题(每空1 分,共15 分)1. 数据库的数据模式由_____ 和____ 内模式三级模式构成。
2. E―R 模型的组成要素包括:实体、_____、联系。
3. 假设一个学生只属于一个班级,则班级和学生之间是____ 联系;学生可以同时修多门课程,学生和课程之间是____ 联系。
4. 关系模式的三类完整性约束分别是____、____ 和____ 约束。
5. SQL Server 主数据文件和事务日志文件默认的扩展名分别为____、____ 。
6.T-SQL 语言使用__create trigger__ 语句建立触发器。
7. 2NF 的关系模式转变为3NF 的关系模式,将是消除了非主属性对码的___传递函数依赖__ 。
8. 集合R 交S 的并表示为_____ 。
9.SQL 语句分为:数据定义语句、_数据操纵语言DML____ 和数据控制语句。
10.删除视图的SQL 命令是____DROP VIEW_ 。
二、单项选择题(本大题共20 小题,每小题 1 分,共20 分)1. DBMS 能实现对数据的查询、插入、修改和删除等操作,这种功能称为( A. 数据定义功能 B. 数据管理功能 C. 数据控制功能 D. 数据操纵功能 2. 下列四项中说法不正确的是( ) A. 数据库减少了数据冗余数据库减少了数据冗余 B. 数据库中的数据可以共享 C. 数据库避免了一切数据的重复 D. 数据库具有较高的数据独立性 3. ( )由数据结构、关系操作集合和完整性约束三部分组成。
A. 关系模型 B. 关系 C. 关系模式 D. 关系数据库 4. 在数据库的E-R 图中,方框表达的是( ) A. 属性 B. 实体C. 实体之间的联系D. 实体与属性之间的联系)武汉理工大学数据库期末考试试题06级5. 现有关系表:选课(学号,姓名,所在系,课程号,课程名,成绩)的主码是( ) A. 学号,课程号 B. 学号学号,C. 课程号 D. 姓名,课程名6. 在关系数据库中,表与表之间的联系是通过( )实现的。
武汉理工大学852数据结构考研真题试题2010—2014年
1
2
3
4
5
图8
A. 删除顶点 v3 B. 删除顶点 v5 C. 添加边<v2, v1> D. 添加边<v4, v5>
(9)设有 n 个关键字,散列查找法的平均查找长度是
。
A. O (1) B. O (n) C. O (log n) D. O (nlog n)
(10)在含有 12 个结点的平衡二叉排序树上,查找关键字为 35 的结点,被依次比较的关
B+树。画出这棵 B+树。然后再这个 B+树中删除关键字 48 和 38,分别画出删除后的 B+树。 (21)以{234,566,453,333,89,567,123,908,689,505}进行基数排序,要求写出每一趟排序 的排序过程。 四、算法设计题(48 分,每小题 16 分) (22)以单链表为存储结构,写一算法完成选择排序。 (23)huffman 树以静态三叉链存储,编写一个算法,求该树的帯权路径长度 WPL。 (24) 以顺序表为存储结构,从顺序表中删除重复的元素,并使剩余元素间的相对次序保持 不变。
武汉理工大学 2014 数据结构 852 试题
一、简答题(30 分,每小题 6 分)
(1)什么是算法?评价算法(或算法设计)依据的标准是什么?在保证正确性的前提下, 算法设计的首要目标是什么?算法复杂度分析涉及哪几个方面?
(2)队列的特点是什么?什么是循环队列?循环队列的优点是什么?
(3)已知某完全二叉树的第 7 层有 10 个叶子结点,请问该完全二叉树的结点总数为多少 (要求简述求解过程)?
武汉理工大学 2012 年数据结构研究生入学考试试题
一、选择题(30 分,每小题 2 分)
08数据结构试卷A (1)
武汉理工大学教务处试题标准答案及评分标准用纸课程名称数据结构(A 卷)一、判断题(每小题2分,共20分)1、对2、对3、错4、对5、对6、对7、错8、对9、错10、对装二、选择题(每小题3分,共15分)1、B2、C3、B4、A5、D三、填空题(每小题3分,共21分)1、n-12、p->prior->next=p->next; p->next->prior=p->prior;3、334、中序5、n(n-1)6、(n+1)/2 或3(n+1)/47、CEF四、应用题((每小题9分,共36分)1、(1)将数组中的负数调到非负数之前……………3分(2)只需对数组扫描一遍即可,故时间复杂度为O(n) ……………6分(3)最坏情况下:负数都位于非负数之后,需将负数与非负数对换,故记录的最大移动次数为n /2 ……………9分订2、中序遍历:LDR 后序遍历:LRD ……………2分由中序遍历和后序遍历一致,则应该是LD,任一个结点没有右孩子……………5分………………………9分线3、32%7=4,13%7=6,49%7=0,55%7=6,22%7=1,38%7=3,21%7=0 ……………2分哈希表为:495522383221130123456……………5分查找32,13,49,38需比较一次,查找22需比较两次,查找55需比较3次,查找21需比较6次……………8分故平均查找长度为:(1*4+2*1+3*1+6*1)/7=15/7 ……………9分4、排序算法主要有简单排序、快速排序、堆排序、归并排序、基数排序。
…………1分(1)从平均性能而言,快速排序最佳,其所需时间最省,但快速排序在最坏情况下的时间性能不如堆排序和归并排序,在n较大时,归并排序所需时间较堆排序省,但它所需的辅助存储量最多。
……………3分(2)“简单排序”包括除希尔排序之外的所有插入排序,起泡排序和简单排序,其中直接插入排序最简单,当序列中的记录“基本有序”或n较小时,它是最佳排序方法,因此常将它和其他的排序方法,诸如快速排序、归并排序等结合在一起使用。
数据结构期末试卷(武汉理工大学)
一、选择题(答案不唯一可多选,26分,每空2分)1.下列各项中属于逻辑结构的有。
A. 哈希表B. 有序表C. 单链表D. 顺序表2.由3个结点组成的二叉树的深度可能是。
A.1 B.2 C.3 D.43.将一个a[100][100]的三对角矩阵以行主序存入一维数组B[298]中,元素a[65][64]在B数组中的位置k等于。
A.198 B.197 C.196 D.1954.一棵满二叉树同时又是一棵。
A. 完全二叉树B. 二叉排序树C . 正则二叉树D. 平衡二叉树5.长度为n的顺序表,在任何位置上插入或删除一个元素的概率相等,插入一个元素时平均移动个元素,删除一个元素时平均移动个元素。
A.(n+1)/2 B.n/2 C.(n-1)/2 D.(n-2)/26. 用s表示入栈操作,*表示出栈操作,栈的初态、终态均为空,入栈和出栈的操作序列可表示成仅为由s 和*组成的序列。
下面的序列中合法的操作序列有。
A.s*ss*s** B.sss**s** C. s**s*ss* D.sss*s*s*7. 是特殊的线性表。
A.队列B.哈希表C.栈D.判定表8. 表长为25的哈希表,用除留余数法公式H(key)=key % p 或H(key)=key mod p,则p应取为宜。
A.23B.24C.25D.269.任一个有向图的拓扑序列。
A.可能不存在B.有一个C. 一定有多个D.有一个可多个10.在下列的排序方法中,方法可能出现这种情况:在最后一趟开始之前,所有的元素都不在其最终应在的正确位置上。
A.快速排序B. 冒泡排序C.堆排序D. 插入排序11.若以{4,5,6,7,8}作为权值构造Huffmen树,则该树的带权路径长度为。
A.67B.68C.69D.7012.设head(L)、tail()分别为取广义表表头和表尾的操作,则从广义表L=((x,y,z),a,(u,v,w))中取出原子u 的运算为。
A.head(tail(tail(head(L))))B.tail(head(head(tail(L))))C.head(tail(head(taill(L))))D.head(head(tail(tail(L))))二、填空题(共32分,每空2分)13.在单链表中设置头结点和作用是__________________ 。
武汉理工大学852数据结构考研真题试题2014年
武汉理工大学 2014数据结构852试题一、简答题(30分,每小题6分)(1)什么是算法?评价算法(或算法设计)依据的标准是什么?在保证正确性的前提下,算法设计的首要目标是什么?算法复杂度分析涉及哪几个方面?(2)队列的特点是什么?什么是循环队列?循环队列的优点是什么?(3)已知某完全二叉树的第7层有10个叶子结点,请问该完全二叉树的结点总数为多少(要求简述求解过程)?(4)对一个由n个关键字不同的记录构成的序列,能否用比2n-3少的次数选出该序列中关键字取最大值和关键字取最小值的记录?简述如何实现?在最坏情况下至少进行多少次比较?(5)什么是广义表?请简述广义表与线性表的主要区别。
二、算法分析题(16分,每小题8分)(6)阅读下列算法int search(elemtype r[ ],int n,keytype k){int i =n;r[0].key=k;while(r[i].key!=k)i--;return(i);}(6-1)该算法的执行时间与那些因素有关?(6-2)该算法在等概率的情况下,查找成功和查找失败的平均查找长度是多少?(6-3)若表中关键字按升序排列时,算法可以改进吗?简述改进算法思想。
改进后算法在等概率的情况下,查找成功和查找失败的平均查找长度是多少?(7)阅读下列算法,输出当n=5时fib(5)的结果,分析该算法的时间复杂度和空间复杂度。
int fib(int n){int f;if (n==0) f=0;else if (n==1) f=1;else f=fib(n-2)+fib(n-1);printf("%d ",f);return f;}三、应用题(50分,每小题10分)(8)假定用于通信的电文中仅使用8个字母A,B,C,D,E,F,G,H,各字母使用的频率分别为。
武汉理工大学数据结构复习题
复习题集一判断题(×)1.线性表在物理存储空间中也一定是连续的。
(×)2.顺序存储方式只能用于存储线性结构。
(√)3.栈是一种对所有插入、删除操作限于在表的一端进行的线性表,是一种后进先出型结构。
(√)4.两个栈共享一片连续内存空间时,为提高内存利用率,减少溢出机会,应把两个栈的栈底分别设在这片内存空间的两端。
(×)5.二叉树的度为2。
(√)6.若二叉树用二叉链表作存贮结构,则在n个结点的二叉树链表中只有n—1个非空指针域。
(×)7.二叉树中每个结点的两棵子树的高度差等于1。
(√)8.用二叉链表法存储包含n个结点的二叉树,结点的2n个指针区域中有n+1个为空指针。
()9.在冒泡法排序中,关键值较小的元素总是向前移动,关键值较大的元素总是向后移动。
()10.计算机处理的对象可以分为数据和非数据两大类。
()11.数据的逻辑结构与各数据元素在计算机中如何存储有关。
()12.算法必须用程序语言来书写。
()13.判断某个算法是否容易阅读是算法分析的任务之一。
()14.顺序表是一种有序的线性表。
()15.分配给顺序表的内存单元地址必须是连续的。
()16.栈和队列具有相同的逻辑特性。
()18.树形结构中每个结点至多有一个前驱。
()19.在树形结构中,处于同一层上的各结点之间都存在兄弟关系。
()20.如果表示图的邻接矩阵是对称矩阵,则该图一定是无向图。
()21.如果表示图的邻接矩阵是对称矩阵,则该图一定是有向图。
()22.顺序查找方法只能在顺序存储结构上进行。
()23.折半查找可以在有序的双向链表上进行。
()24.满二叉树中不存在度为1的结点。
()25.完全二叉树中的每个结点或者没有孩子或者有两个孩子。
()26.对n个元素知心快速排序,在进行第一次分组时,排序码的比较次数总是n-1次。
()27.在有向图中,各顶点的入度之和等于各顶点的出度之和。
一、选择题()1. 在n个结点的顺序表中,算法的时间复杂度是O(1)的操作是:A) 访问第i个结点(1≤i≤n)和求第i个结点的直接前驱(2≤i≤n)C) 删除第i个结点(1≤i≤n)B) 在第i个结点后插入一个新结点(1≤i≤n)D) 将n个结点从小到大排序(C)2. 算法分析的目的是:A) 找出数据结构的合理性B) 研究算法中的输入和输出的关系C) 分析算法的效率以求改进D) 分析算法的易懂性和文档性(A)3. 算法分析的两个主要方面是:A) 空间复杂性和时间复杂性B) 正确性和简明性C) 可读性和文档性D) 数据复杂性和程序复杂性(B)4. 计算机算法必须具备输入、输出和等5个特性。
数据结构考试试题题库
数据结构考试试题题库一、选择题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. 解释什么是递归,并给出一个使用递归解决实际问题的例子。
结束语数据结构的学习不仅仅是对概念的理解,更重要的是能够将这些概念应用到实际问题的解决中。
通过本题库的练习,希望能够加深你对数据结构的理解和应用能力。
请注意,这只是一个示例题库,实际的考试题库可能会包含更多的题目和不同的题型。
考生应根据具体的课程内容和考试要求来准备。
数据结构试题库及答案
数据结构试题库及答案一、选择题(每题2分,共20分)1. 在数据结构中,线性表的顺序存储结构通常使用()来存储。
A. 链表B. 栈C. 队列D. 数组答案:D2. 以下哪个算法不是排序算法?A. 快速排序B. 归并排序C. 深度优先搜索D. 堆排序答案:C3. 在二叉树的遍历算法中,先访问根节点,然后遍历左子树,最后遍历右子树的遍历方式是()。
A. 先序遍历B. 中序遍历C. 后序遍历D. 层序遍历答案:A4. 哈希表的冲突解决方法不包括以下哪种?A. 链地址法B. 线性探测法C. 二分查找法D. 再散列法答案:C5. 在图的遍历算法中,广度优先搜索(BFS)使用的辅助数据结构是()。
A. 栈B. 队列C. 堆D. 链表答案:B6. 下列关于堆的描述中,错误的是()。
A. 堆是一种特殊的完全二叉树B. 堆中的每个节点的值都大于其子节点的值C. 堆可以用于实现优先队列D. 堆的插入操作的时间复杂度为O(log n)答案:B7. 在一个长度为n的数组中,使用二分查找算法查找一个元素的最坏情况下的时间复杂度是()。
A. O(1)B. O(n)C. O(n^2)D. O(log n)答案:D8. 以下哪个数据结构不是线性结构?A. 链表B. 栈C. 队列D. 二叉树答案:D9. 以下哪个算法是动态查找表?A. 直接索引B. 顺序查找C. 二分查找D. 哈希表答案:D10. 在图的表示方法中,邻接矩阵表示法的缺点是()。
A. 占用空间大B. 占用空间小C. 插入和删除操作复杂D. 遍历操作复杂答案:A二、填空题(每题2分,共20分)1. 在一个长度为n的数组中,使用顺序查找算法查找一个元素的时间复杂度为________。
答案:O(n)2. 一个具有n个节点的完全二叉树的高度为________。
答案:log2(n) + 1(向上取整)3. 一个长度为n的链表,删除一个节点的时间复杂度为________。
答案:O(1)4. 在图的表示方法中,邻接表表示法的缺点是________。
武汉理工大学历年数据结构试题及答案修改一
数据结构试卷(一)一、单选题(每题 2 分,共20分)1.栈和队列的共同特点是( A )。
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层的结点数最多为( ).k-1A.2k-1 B.2K+1 C.2K-1 D. 27.若有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个结点的无向图,该图至少应有( )条边才能确保是一个连通图。
A.5B.6C.7D.8二、填空题(每空1分,共26分)1.通常从四个方面评价算法的质量:__ _、__ _____、______和_________。
2.一个算法的时间复杂度为(n3+n2log2n+14n)/n2,其数量级表示为_____。
武汉理工大学数据结构试题
试题标准答案及评分标准用纸| 课程名称数据结构(B卷)一、填空题(每空2分,共20分)1.逻辑结构存储结构运算2. 单链表3. 队尾队首4. 顺序表5.直接插入排序、简单选择排序、起泡排序、快速排序、基数排序、归并排序、堆排序中任选2种6. 2h-1二、单选题(每小题1分,共10分)1.B2.C3. B4.C5. A6.C7.A8. C9. D 10.B三、问答题(每小题5分,共10分)1. 算法是解决给定问题的一种方法(策略),即为解决某一特定问题而由若干条指令组成的有穷序列。
(2分)算法分析的目的是研究算法执行时间随问题规模变化的情况(问题规模是一个和输入有关的量,如n),提高算法的效率。
(1分)算法分析主要涉及:时间复杂度和空间复杂度。
(2分)2.线性表(a1,a2,……,an)中每个元素都具有相同的类型,它有两种存储结构:顺序表和链表。
广义表(d1,d2,……,dn)中每个元素可以是原子,也可以是子表。
可以将广义表看作是线性表的推广。
由于原子和子表的类型不同,所以只能用链式存储结构。
四、图表计算题(每小题8分,共40分)3.构造的哈夫曼树如图所示:4.第一趟: 060,820,200,150,331,001,761,044,004,125,545,806,308,029 第二趟: 200,001,004,806,308,820,125,029,331,044,545,150,060,761 第三趟: 001,004,029,044,060,125,150,200,308,331,545,761,806,820 5.其拓扑序列如下:l 2 4 5 8 9 10 3 7 6 ll 12五、算法设计题(20分)略。
武汉理工大学专升本计算机系统结构题库
一、计算( 每题参考分值5分)1、用一台60MHZ处理机执行标准测试程序,程序所含的混合指令数和每类指令的CPI如表所示,求有效CPI、MIPS 速率和程序的执行时间。
正确答案:解:总的指令数为:45000+35000+15000+15000=100000条,因此各类指令所占的比例分别是:整数运算为45%,数据传送为25%,浮点操作为15%,控制传送为15%。
有效CPI、MIPS速率和程序的执行时间分别计算如下:(1)有效CPI为:1×0.45+2×0.25+4×0.15+2×0.15=1.85CPI (2)MIPS速率为:1/1.85×60=32.43MIPS (3)程序的执行时间为:100000×1.85/(60×106)=0.003083s=3083us2、用一台50MHZ处理机执行标准测试程序,程序所含的混合指令数和每类指令的CPI如表所示,求有效CPI、MIPS 速率和程序的执行时间。
正确答案:解:总的指令数为:5000+3000+1000+1000=10000条,因此各类指令所占的比例分别是:整数运算为50%,数据传送为30%,浮点操作为10%,控制传送为10%。
有效CPI、MIPS速率和程序的执行时间分别计算如下:(1)有效CPI为:1×0.5+2×0.3+3×0.1+2×0.1=1.6CPI (2)MIPS速率为:1/1.6×50=31.325MIPS (3)程序的执行时间为:10000×1.6/(50×106)=0.00032s=320us3、用一台40MHZ处理机执行标准测试程序,程序所含的混合指令数和每类指令的CPI如表所示,求有效CPI、MIPS 速率和程序的执行时间。
正确答案:解:总的指令数为:45000+32000+15000+8000=100000条,因此各类指令所的比例分别是:整数运算为45%,数据传送为32%,浮点操作为15%,送为8%。
武汉理工大学计算机考研《数据结构852》考研历年真题
《852数据结构真题》2002年数据结构研究生入学考试试题一.选择题(30分,每空2分。
答案可能不唯一)1.算法在发生非法操作时可以作出处理的特性称为。
①正确性②可读性③键状性④可靠性2.指针p所指的元素是双向链表L的尾元素的条件是 A 。
若队列采用链式存储,则该链式队列 B 。
A:① p==L ② p==NULL ③ p->Llink==L ④p->Rlink==LB:①存在队满的情况②不存在队空的情况③入队之前必须判断队满否④出队之前必须判断队空否3.二叉排序树是:。
①中序遍历得到一升序序列的二叉树②每一分支结点的度均为2的二叉树③按层次从左到右顺序编号的二叉树④每一分支结点的值均小于其右子树上所有结点的值(若右子树存在),又大于其左子树上所有结点的值(若左子树存在)4.三对角矩阵a[1…n][1…n]以行为主序顺序存储,其存储始址是b,每个元素占一个存储单元,则元素a[i][j]的存储始址为。
①b+2*j+i-2 ② b+2*i+j-2 ③ b+2*j+i-3 ④ b+2*i+j-35.已知一棵二叉树的前序序列和中序序列分别是GFDBHCEA和DFHBGCAE,则该二叉树的后序序列为 A ,层次序列为 B ,若由森林转化得到的二叉树是非空的二叉树,则该二叉树是 C ,如果满足条件 D ,线索二叉树中结点p无右孩子。
A、B:① DBHFEACG ② GFCDBEHA ③ DHBFAECG ④ DFGBCEHAC:①根结点无右子树②根结点可能有左子树和右子树③根结点无左子树④各结点只有一个孩子D:①p->rchild==NULL ②p->rtag==1 p->rtag==0 ④p->rtag==NULL6.一个加权连通无向图的最小生成树可以使用 A 生成。
一项工程完工所需的最少时间等于某个 BA:① Hash算法② Dijstra算法③ prim算法④ Huffman算法B:① AOE网中源点到汇点事件最多的路径的长度②AOE网中源点到汇点的最长路径的长度③AOE网中源点到汇点的最短路径的长度④AOE网中源点到汇点活动最多的路径的长度7.用冒泡排序的方法对n个记录进行排序,第一趟共要比较 A对元素。
数据结构期末考试试卷及答案
数据结构期末考试试卷及答案一、选择题(每题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. 在图的遍历过程中,深度优先遍历算法使用的数据结构是______。
08数据结构试卷B
四、简答题(每小题 4 分,共 20 分) 简答题(
1.试比较顺序存储结构和链式存储结构的优缺点。在什么情况下用顺序表比链表好?
2.描述以下三个概念的区别:头指针、头结点、首元结点(第一个元素结点) 。在单链表中设置头结点的作用 是什么?
3.顺序队的“假溢出”是怎样产生的?如何知道循环队列是空还是满?
武汉理工大学考试试题纸( B 卷)
课程名称 题号 一 二 20 三 20 数据结构与算法 四 20 五 10 六 20 七 专业班级通信及信息实验班 八 九 十 总分 100
题分 10
备注:
学生不得在试题纸上答题(含填空题、选择题等客观题)
一、判断题(10×1=10 分) 判断题( )
( )1.数据的逻辑结构与各数据元素在计算机中如何存储有关。 ( )2.分配给顺序表的内存单元地址必须是连续的。 ( )3.顺序表结构适宜于进行顺序存取,而链表适宜于进行随机存取。 ( )4.对于不同的使用者,一个表结构既可以是栈,也可以是队列,也可以是线性表。 ( )5.在树形结构中,处于同一层上的各结点之间都存在兄弟关系。 ( )6.如果表示图的邻接矩阵是对称矩阵,则该图一定是无向图。 ( )7.用二叉链表法(link-rlink)存储包含 n 个结点的二叉树,结点的 2n 个指针区域中有 n+1 个为空指针。 ( )8.具有 12 个结点的完全二叉树有 5 个度为 2 的结点。 ( )9.在有向图中,每个顶点的入度之和等于该顶点的出度之和。 ( )10.在冒泡法排序中,关键值较小的元素总是向前移动,关键值较大的元素总是向后移动。
栈。 ___有关。
__元素,具体移动的元素个数与_
。
条边。 。
10.有向图 G 用邻接表矩阵存储,其第 i 行的所有元素之和等于顶点 i 的
数据结构试题及答案
数据结构试题及答案一、选择题(每题5分,共25分)1. 以下哪个数据结构是线性结构?A. 栈B. 树C. 队列D. 图答案:A2. 以下哪个操作的时间复杂度是O(1)?A. 在链表中插入一个元素B. 在数组中查找一个元素C. 在二叉搜索树中插入一个元素D. 在图中查找一个顶点的邻居答案:B3. 以下哪个数据结构是非线性结构?A. 栈B. 队列C. 数组D. 树答案:D4. 以下哪个操作不能在O(1)时间内完成?A. 删除链表的尾节点B. 删除数组的最后一个元素C. 删除二叉搜索树的最小值节点D. 删除图中任意两个顶点之间的边答案:D5. 以下哪个数据结构不具有后进先出(LIFO)的特点?A. 栈B. 队列C. 数组D. 链表答案:B二、填空题(每题5分,共25分)1. 在_________中,任何节点的两个子节点之间恰好有_________条边。
答案:树,02. 动态数组是_________数据结构,它可以在_________时间内改变其大小。
答案:线性,O(1)3. 栈和队列都是_________结构,它们都具有_________特点。
答案:线性,后进先出(LIFO)4. 哈希表是通过_________函数将键映射到_________上的数据结构。
答案:哈希,数组索引5. 在_________中,每个节点最多有_________个子节点。
答案:二叉树,2三、判断题(每题5分,共25分)1. 链表比数组更适合进行频繁的插入和删除操作。
()2. 深度优先搜索(DFS)和广度优先搜索(BFS)都可以用来遍历图。
()3. 堆是一种完全二叉树,且满足堆积的性质。
()4. 哈希表的查找时间复杂度为O(1)。
()5. 并查集是一种用于解决集合合并和查找问题的数据结构。
()四、简答题(每题10分,共30分)1. 简述二分搜索树(BST)的特点及其性质。
答案:二分搜索树是一种有序的二叉树,它的特点是:对于任意节点,其左子树上的所有节点的值都小于该节点的值,其右子树上的所有节点的值都大于该节点的值。
数据结构(本科)武汉理工大学 在线作业
数据结构(本科)武汉理工大学在线作业一、判断(共计40分,每题2.5分)1、快速排序是排序算法中平均性能最好的一种排序。
()A. 正确B. 错误答案:【A】2、调用一次深度优先遍历可以访问到图中的所有顶点。
()A. 正确B. 错误答案:【B】3、对连通图进行深度优先遍历可以访问到该图中的所有顶点。
()A. 正确B. 错误答案:【A】4、线性表中的所有元素都有一个前驱元素和后继元素。
()A. 正确B. 错误答案:【B】5、设一棵二叉树的先序序列和后序序列,则能够唯一确定出该二叉树的形状。
()A. 正确B. 错误答案:【B】6、先序遍历一棵二叉排序树得到的结点序列不一定是有序的序列。
()A. 正确B. 错误答案:【A】7、不论线性表采用顺序存储结构还是链式存储结构,删除值为X的结点的时间复杂度均为O(n)。
()A. 正确B. 错误答案:【A】8、满二叉树一定是完全二叉树,完全二叉树不一定是满二叉树。
()B. 错误答案:【A】9、子串“ABC”在主串“AABCABCD”中的位置为2。
( )A. 正确B. 错误答案:【A】10、非空的双向循环链表中任何结点的前驱指针均不为空。
()A. 正确B. 错误答案:【A】11、分块查找的平均查找长度不仅与索引表的长度有关,而且与块的长度有关。
()A. 正确B. 错误答案:【A】12、线性表的顺序存储结构比链式存储结构更好。
()A. 正确B. 错误答案:【B】13、向二叉排序树中插入一个结点需要比较的次数可能大于该二叉树的高度。
()A. 正确B. 错误答案:【B】14、层次遍历初始堆可以得到一个有序的序列。
()A. 正确B. 错误答案:【B】15、冒泡排序在初始关键字序列为逆序的情况下执行的交换次数最多。
()A. 正确B. 错误答案:【A】16、设初始记录关键字基本有序,则快速排序算法的时间复杂度为O(nlog2n)。
()B. 错误答案:【B】二、单选(共计60分,每题2.5分)17、在二叉排序树中插入一个关键字值的平均时间复杂度为()。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
8.()堆排序中,在输出一个根之后的调整操作中,“临时根”结点的值将被调到“叶子结点”上。
3、填空(每小题2分,共14分)
1.在单链表中,删除指针P所指结点的后继结点的语句是()。
2.已知完全二叉树的第八层有8个结点,则其叶子结点数是()。
3.有n个顶点的强连通有向图G至少有()条弧。
4.求最短路径的DIJKSTRA算法的时间复杂度为()。
5.在有序表A[1,20]中,采用二分查找算法查找元素值等于A[12]的元素,所比较过的元素的下标依次为()。
6.直接选择排序算法所执行的元素交换次数最多为()。
7.下列排序算法中,稳定的排序算法是()(选择排序,堆排序,快速排序,直接插入排序)。
4、解答下列各题(38分)
1.一棵二叉树的先序序列和中序序列分别如下,画出该二叉树。
(6分)
先序序列ABCDEFGHIJ
中序序列CBEDAGHFJI
2.对下面给出的数据序列,构造一棵哈夫曼树,并求出其带权路径长度。
(8分)
4, 5, 6, 7, 10, 12, 15, 18, 23
3.图G的邻接表如下,完成下列各题:(8分)
(1)画出从顶点5出发进行广度遍历所生成的生成树。
(2)判断其中是否存在有向回路,若不存在,求出其拓扑序列。
132
254
367
498
59108
611
712
89
910
1011
1112
12^
4.对下列数据表,写出采用快速排序算法排序的每一趟的结果。
(8分)
(60,20,31,1,5,44,55,61,200,30,80,150,4,29)
5.已知哈希表地址空间为0..8,哈希函数为H(k)=k % 7,采用线性探查法处理冲突。
将下面数据序列依次存入该散列表中,并求出在等概率下的平均查找长度。
(8分)
100,20,21,35,3,78,99,45
0 1 2 3 4 5 6 7 8
5、算法设计(共30分)
1.已知单循环链表L中至少有两个结点,每个结点的两个字段为data和next,其中字段data的类型为整型。
设计算法以判断该链表中的每个元素的值是否小于其后续两个结点的值的和,若满足,返回true,否则返回false。
2.设计算法按后序次序打印二叉树T中所有叶子结点的值,并返回其结点数。
3.写出在二叉排序树中查找值为x的元素的算法。
武汉理工大学教务
处
试题标准答案及评分标准用纸
| 课程名称数据结构( A 卷)
一、选择题
1. (d) 2. (c) 3. (b) 4. (a) 5. (c)
二、判断题
1.(√) 2.(X) 3.(X) 4.(√) 5.(X) 6.
(X) 7.(X) 8.(X)
三、填空
1.P->next=P->next->next; 2. 68 3.
n 4.O(n2)
5. 10,15,12 6.n-
1 7.直接插入排序
四、解答下列各题
1.二叉树:
A
B F
C D G I
E H J
2.哈夫曼树如下页:
带权路径长度WPL=299
100
58 42
33 25 23 19
18 15 13 12 10 9
7 6 5 4
3.图G的邻接表如下,完成下列各题;(7分)
(1) 从顶点5出发进行广度遍历所生成的生成树;
5
9 10 8
11
12
(2)该图中不存在有向回路,其拓扑序列如下:
l 2 4 5 8 9 10 3 7 6 ll 12
4.快速排序各趋结果如下,其中括号中为待排序列,括号外为最终结果。
(60 20 31 1 5 44 55 61 200 30 80 150 4 29)
(29 20 31 1 5 44 55 4 30) 60 (80 150 200 61)
(4 20 5 1) 29(44 55 31 30) 60 (61)80 (200 150)
(1)4 (5 20)29(30 31) 44 (55)60 61 80 150 (200)
l 4 5 (20)29 30 (31) 44 55 60 61 80 150 200
1 4 5 20 29 30 31 44 55 60 61 80 150 200
5.散列表如下:
0 1 2 3 4 5 6 7 8
2135100378992045
1 2 1 1 4 5 1 5
平均查找长度ASL:(4*1+1*2+1*4+2*5)/8=2.5
五、算法设计(略)。