北语17春《数据结构》作业2满分答案
《数据结构》课后习题答案(第2版)
《数据结构》课后习题答案(第2版)数据结构课后习题答案(第2版)第一章:基本概念1. 什么是数据结构?数据结构是指数据元素之间的关系,以及相应的操作。
它研究如何组织、存储和管理数据,以及如何进行高效的数据操作。
2. 数据结构的分类有哪些?数据结构可以分为线性结构和非线性结构。
线性结构包括数组、链表、栈和队列;非线性结构包括树和图。
3. 什么是算法?算法是解决特定问题的一系列有序步骤。
它描述了如何输入数据、处理数据,并产生期望的输出结果。
4. 算法的特性有哪些?算法具有确定性、有限性、输入、输出和可行性这五个特性。
5. 数据结构和算法之间的关系是什么?数据结构是算法的基础,算法操作的对象是数据结构。
第二章:线性表1. 顺序表的两种实现方式是什么?顺序表可以通过静态分配或动态分配的方式实现。
静态分配使用数组,动态分配使用指针和动态内存分配。
2. 单链表的特点是什么?单链表由节点组成,每个节点包含数据和一个指向下一个节点的指针。
它的插入和删除操作效率高,但是查找效率较低。
3. 循环链表和双向链表分别是什么?循环链表是一种特殊的单链表,在尾节点的指针指向头节点。
双向链表每个节点都有一个指向前一个节点和后一个节点的指针。
4. 链表和顺序表的区别是什么?链表的插入和删除操作效率更高,但是查找操作效率较低;顺序表的插入和删除操作效率较低,但是查找操作效率较高。
第三章:栈和队列1. 栈是什么?栈是一种特殊的线性表,只能在表的一端进行插入和删除操作。
后进先出(LIFO)是栈的特点。
2. 队列是什么?队列是一种特殊的线性表,只能在表的一端进行插入操作,在另一端进行删除操作。
先进先出(FIFO)是队列的特点。
3. 栈和队列的应用有哪些?栈和队列在计算机科学中有广泛的应用,例如浏览器的前进后退功能使用了栈,操作系统的进程调度使用了队列。
4. 栈和队列有哪些实现方式?栈和队列可以使用数组或链表来实现,还有更为复杂的如双端队列和优先队列。
2017年春数据结构(第二版)在线作业二及满分答案【最新版】
数据结构(第2版)_在线作业_2一、单选题1.(5分)已知有向图如下,则该图的一种拓扑序列为()。
∙ A. 1-4-6-2-5-3∙ B. 1-4-2-3-6-5∙ C. 1-2-4-6-3-5∙ D. 1-2-3-4-5-6纠错得分: 5知识点: 5.6 拓扑排序展开解析2.(5分)设有数据逻辑结构为:Data=(D,R);D={d1,d2,d3,d4,d5,d6,d7,d8,d9,d10}R={<d1,d2>,<d1,d3>,<d1,d4>,<d2,d5>,<d2,d6>,<d3,d7>,<d3,d8>,<d3,d9>,<d4,d10>}试分析该数据结构属于哪种逻辑结构?()∙ A. 非线性逻辑结构∙ B. 网络结构∙ C. 线型逻辑结构∙ D. 树结构纠错得分: 5知识点: 1.2 基本概念和术语展开解析3.(5分)在一个单链表中,若要在p所指向的结点之后插入一个新结点,则需要相继修改()个指针域的内容。
∙ A. 4∙ B. 1∙ C. 2∙ D. 3纠错得分: 5知识点: 2.3 链接存储结构线性表展开解析4.(5分)快速排序在()情况下优势最明显。
∙ A. 数据完全无序∙ B. 数据中关键字存在大量重复∙ C. 数据基本有序∙ D. 数据量巨大纠错得分: 5知识点: 7.4 快速排序展开解析5.(5分)一个无序数据序列12,36,41,20,80,55 采用顺序表存储数据,采用堆排序算法建立的初始大根堆为()。
∙ A. 80,36,15,20,12,41∙ B. 80,36,20,12,55,41∙ C. 80,12,55,20,36,41∙ D. 80,12,20,55,36,41纠错得分: 5知识点: 7.3 堆排序展开解析6.(5分)假设以I和O分别表示入栈和出栈操作,栈的初态和终态均为空,入栈和出栈的操作序列可表示为仅由I和O组成的序列。
数据结构样卷二参考答案
样卷二参考答案:一简答题1.算法是解决特定问题的操作序列,可以用多种方式描述。
程序是算法在计算机中的实现,与具体的计算机语言有关。
2.主要与哈希函数、装填因子α有关。
如果用哈希函数计算的地址分布均匀,则冲突的可能性较小,如果装填因子α较小,则哈希表较稀疏,发生冲突的可能性较小。
3.图中结点可能有多个前驱,设置访问标志数组主要是为了避免重复访问同一个结点。
4.头指针指向头结点,头结点的后继域指向首元素结点。
5.当队尾到达数组最后一个单元时,就认为队满,但此时数组前面可能还有空单元,因此叫假溢出。
解决的方法是采用循环队列,即令最后一个单元的后继是第一个单元。
二判断题1.(√) 2.(×)3.(×)4.(√) 5.(×)6.(√) 7.(×) 8.(√) 9.(×) 10.(×)三单项选择题1. D 2.B 3.C 4. C 5. B 6. A 7.C 8.D 9. C 10.C 四填空题1. high low low high2. S->next=R->next ; R->next=S ;3.时间空间4. A[2, 3]5. 2h-1五构造题1.(4分)2.(6分)ASL= ( 1×4 + 2×2 + 3 ) / 7 = 11 / 7succ3.(6分)4.(4分)已知权值集合为:{ 5,7,2,3,6,9 },要求给出哈夫曼树,并计算其带权路径长度WPL。
WPL = 2×( 9 + 6 + 7 ) + 3×5 + 4×( 2 + 3 ) = 79六算法分析题解:(1)在二叉排序树中插入关键字为K的结点(2) h = log2 ( n+1 ) 或 h = [ log2n ] + 1 (方括号表示向下取整)(3)O ( log2 ( n+1 ) ) 或 O ( log2n )七算法设计题略。
17春北航《算法与数据结构》在线作业二
17春北航《算法与数据结构》在线作业二2017秋17春北航《算法与数据结构》在线作业二一、单选题(共25 道试题,共100 分。
)1. 设有向图有n个顶点和e条边,采用领接表作为其存储表示,在进行拓扑排序时,总的计算时间为()。
A. O(nloge)B. O(n+e)C. O(n*e)D. O(n的平方)正确答案:2. 以下二叉树说法错误的是A. 完全二叉树上结点之间的父子关系可由它们编号之间的关系来表达B. 在三叉链表上,二叉树的求双亲运算很容易实现C. 在二叉链表上,求根,求左、右孩子等很容易实现D. 在二叉链表上,求双亲运算的时间性能很好正确答案:3. 下述几种排序方法中,平均查找长度最小的是()A. 插入排序B. 选择排序C. 快速排序D. 归并排序正确答案:4. 对于顺序表,以下说法错误的是()A. 顺序表是用一维数组实现的线性表,数组的下标可以看成是元素的绝对地址B. 顺序表的所有存储结点按相应数据元素间的逻辑关系决定的次序依次排列C. 顺序表的特点是:逻辑结构中相邻的结点在存储结构中仍相邻D. 顺序表的特点是:逻辑上相邻的元素,存储在物理位置也相邻的单元中正确答案:5. 队列的插入操作是在()进行。
A. 队首B. 队尾C. 队前D. 队后正确答案:6. 设有两个串(S1和S2),求S1在S2中首次出现的位置的运算称为()。
A. 连接B. 模式匹配C. 求子串D. 求串长正确答案:7. 一般地,一个存储结构包括以下三个主要部分。
以下说法错误的是A. 存储结点每个存储结点可以存放一个或一个以上的数据元素B. 数据元素之间关联方式的表示也就是逻辑结构的机内表示C. 附加设施,如为便于运算实现而设置的“哑结点”等等D. 一种存储结构可以在两个级别上讨论。
其一是机器级,其二是语言级正确答案:8. 串的逻辑结构与()的逻辑结构不同。
A. 线性表B. 栈C. 队列D. 树正确答案:9. 将含100个结点的完全二叉树从根这一层开始,每层上从左到右依次对结点编号,根结点的编号为1。
数据结构作业及答案汇总
数据结构作业及答案汇总数据结构是计算机科学中的一个重要概念,它涉及到组织和管理数据的方式和方法。
在学习数据结构的过程中,作业和答案总结是帮助我们巩固知识和理解的重要步骤。
本文将对数据结构作业及答案进行汇总,以便帮助读者更好地学习和掌握数据结构知识。
作业一:栈和队列1. 描述栈和队列的基本特点,并给出它们的应用场景。
栈是一种容器,它具有后进先出(LIFO)的特点。
常见的应用场景有程序调用栈、浏览器的前进后退功能等。
队列是一种容器,它具有先进先出(FIFO)的特点。
常见的应用场景有任务调度、消息队列等。
2. 设计一个栈,使其具有查找最小元素的功能。
给出实现代码和分析时间复杂度。
3. 设计一个队列,使其具有查找最大元素的功能。
给出实现代码和分析时间复杂度。
作业二:链表1. 描述链表的基本特点,并给出它的应用场景。
链表是一种数据结构,它由一系列节点组成。
每个节点包含数据和指向下一节点的指针。
常见的应用场景有实现链表、存储大量数据等。
2. 设计一个单向链表,使其具有反转链表的功能。
给出实现代码和分析时间复杂度。
3. 设计一个双向链表,使其具有插入和删除节点的功能。
给出实现代码和分析时间复杂度。
作业三:树1. 描述树的基本特点,并给出它的应用场景。
树是一种非线性数据结构,它由节点和边组成。
常见的应用场景有文件系统、数据库索引等。
2. 设计一个二叉树,实现遍历功能(前序、中序、后序)。
给出实现代码和分析时间复杂度。
3. 设计一个平衡二叉树,使其具有快速查找节点的功能。
给出实现代码和分析时间复杂度。
作业四:图1. 描述图的基本特点,并给出它的应用场景。
图是一种由顶点和边组成的数据结构,边表示顶点之间的关系。
常见的应用场景有社交网络、地图导航等。
2. 设计一个有向图,实现深度优先搜索(DFS)算法。
给出实现代码和分析时间复杂度。
3. 设计一个无向图,实现广度优先搜索(BFS)算法。
给出实现代码和分析时间复杂度。
答案汇总:在本文中,我们对栈、队列、链表、树和图这几个常见的数据结构进行了作业设计和答案汇总。
数据结构作业二答案
作业二栈和队列一、填空题(每空1分,共15分)1. 栈是一种特殊的线性表,允许插入和删除运算的一端称为栈顶。
不允许插入和删除运算的一端称为栈底。
2. 队列是被限定为只能在表的一端进行插入运算,在表的另一端进行删除运算的线性表。
只能在队尾插入和队首删除元素。
3. 在具有n个单元的循环队列中,队满时共有n-1个元素。
4. 向栈中压入元素的操作是先移动栈顶指针,后存入元素。
5. 从循环队列中删除一个元素时,其操作是先移动队首指针,后取出元素。
二、判断正误(判断下列概念的正确性,并作出简要的说明。
)(每小题1分,共10分)(×)1. 线性表的每个结点只能是一个简单类型,而链表的每个结点可以是一个复杂类型。
错,线性表是逻辑结构概念,可以顺序存储或链式存储,与元素数据类型无关。
(√)2. 栈是一种对所有插入、删除操作限于在表的一端进行的线性表,是一种后进先出型结构。
(√)3. 对于不同的使用者,一个表结构既可以是栈,也可以是队列,也可以是线性表。
正确,都是线性逻辑结构,栈和队列其实是特殊的线性表,对运算的定义略有不同而已。
(×) 4. 栈和链表是两种不同的数据结构。
错,栈是逻辑结构的概念,是特殊殊线性表,而链表是存储结构概念,二者不是同类项。
(×) 5. 栈和队列是一种非线性数据结构。
错,他们都是线性逻辑结构,栈和队列其实是特殊的线性表,对运算的定义略有不同而已。
(√)6. 栈和队列的存储方式既可是顺序方式,也可是链接方式。
(√)7. 两个栈共享一片连续内存空间时,为提高内存利用率,减少溢出机会,应把两个栈的栈底分别设在这片内存空间的两端。
(×)8. 队是一种插入与删除操作分别在表的两端进行的线性表,是一种先进后出型结构。
错,后半句不对。
(×)9. 一个栈的输入序列是12345,则栈的输出序列不可能是12345。
错,有可能。
三、单项选择题(每小题1分,共20分)(B)1.栈中元素的进出原则是A.先进先出B.后进先出C.栈空则进D.栈满则出(C)2.若已知一个栈的入栈序列是1,2,3,…,n,其输出序列为p1,p2,p3,…,pn,若p1=n,则pi为A.i B.n=i C.n-i+1 D.不确定解释:当p1=n,即n是最先出栈的,根据栈的原理,n必定是最后入栈的(事实上题目已经表明了),那么输入顺序必定是1,2,3,…,n,则出栈的序列是n,…,3,2,1。
17年10月清考《数据结构》考核作业
东北大学继续教育学院数据结构II 试卷(作业考核线上) A 卷学习中心:院校学号:姓名(共页)一、单选题(每小题2分,共10小题,20分)[ ] 1.抽象数据类型的三个组成部分分别为A.数据对象、数据关系和基本操作B.数据元素、逻辑结构和存储结构C.数据项、数据元素和数据类型D.数据元素、数据结构和数据类型[ ] 2.下列各式中,按增长率由小至大的顺序正确排列的是A.n,n!,2n ,n3/2 B.n3/2,2n,n logn,2100C.2n,log n,n logn,n3/2 D.2100,logn, 2n, n n[ ] 3. 已知指针p和q分别指向某单链表中第一个结点和最后一个结点。
假设指针s指向另一个单链表中某个结点,则在s所指结点之后插入上述链表应执行的语句为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;[ ] 4.二维数组A[20][10]采用行优先的存储方法,若每个元素占2个存储单元,且第1个元素的首地址为200,则元素A[8][9]的存储地址为A.374 B.576C.378 D.580[ ] 5.设有一个顺序栈的入栈序列是a、b、c,则3个元素都出栈的可能不同排列个数为 A.4 B.5C. 6D. 7[ ] 6.深度为h的满m叉树的第k层的结点(1=<k=<h)数有A.m k-1 B.m k-1C.m h-1 D.m h-1[ ] 7. n个顶点的有向完全图中含有向边的数目最多为A.n-1B.nC.n(n-1)/2D.n(n-1)[ ] 8.若线性表的插入和删除操作频繁地在表头或表尾位置进行,则更适宜采用的存储结构为A.无头结点的双向链表B.带尾指针的循环链表C.无头结点的单链表D.带头指针的循环链表[ ] 9.对散列文件,以下说法错误的是A.散列文件插入、删除方便,不需要索引区且节省存储空间B.散列文件只能按关键字随机存取且存取速度快C.经过多次插入、删除后,可能出现溢出桶满的情况D.散列文件顺序存取方便[ ] 10. 已知一组关键字为{25,48,36,72,79,82,23,40,16,35},其中每相邻两个为有序子序列。
(完整版)数据结构试题及答案
数据结构试卷(一)王彬一、单选题(每题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进制表示。
cA.688 B.678 C.692 D.6965.树最适合用来表示( )。
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]的比较序列的下标依次为( )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的元素有( c d)个,A.1 B.2 C.3 D.410.设有6个结点的无向图,该图至少应有( )条边才能确保是一个连通图。
A.5B.6C.7D.8二、填空题(每空1分,共26分)1.通常从四个方面评价算法的质量:____ ____、________、________和_______。
2.一个算法的时间复杂度为(n3+n2log2n+14n)/n2,其数量级表示为________。
数据结构(第二版)课后习题答案
数据结构(第二版)课后习题答案第一章:数据结构概述数据结构是计算机科学中非常重要的一个概念,它用于组织和管理计算机内部存储的数据。
数据结构的设计直接影响到程序的运行效率和对真实世界问题的建模能力。
第二版的《数据结构》教材旨在帮助读者更好地理解和应用数据结构。
为了提高学习效果,每章节后都附有一系列习题。
本文将为第二版《数据结构》教材中的部分习题提供详细的答案和解析。
第二章:线性表2.1 顺序表习题1:请问如何判断顺序表是否为空表?答案:当顺序表的长度为0时,即为空表。
解析:顺序表是用一块连续的内存空间存储数据元素的线性结构。
当顺序表中没有元素时,长度为0,即为空表。
习题2:如何求顺序表中第i个元素的值?答案:可以通过访问顺序表的第i-1个位置来获取第i个元素的值。
解析:顺序表中的元素在内存中是连续存储的,通过下标访问元素时,需要将下标减1,因为数组是从0开始编号的。
2.2 链表习题1:请问链表中的结点包含哪些信息?答案:链表的结点一般包含两部分信息:数据域和指针域。
解析:数据域用于存储数据元素的值,指针域用于存储指向下一个结点的指针。
习题2:如何删除链表中的一个结点?答案:删除链表中的一个结点需要将其前一个结点的指针指向其后一个结点,然后释放被删除结点的内存空间。
解析:链表的删除操作相对简单,只需要通过修改指针的指向即可。
但需要注意释放被删除结点的内存空间,防止内存泄漏。
第三章:栈和队列3.1 栈习题1:如何判断栈是否为空?答案:当栈中没有任何元素时,即为空栈。
解析:栈是一种先进后出(Last In First Out,LIFO)的数据结构,栈顶指针指向栈顶元素。
当栈中没有元素时,栈顶指针为空。
习题2:请问入栈和出栈操作的时间复杂度是多少?答案:入栈和出栈操作的时间复杂度均为O(1)。
解析:栈的入栈和出栈操作只涉及栈顶指针的改变,不受栈中元素数量的影响,因此时间复杂度为O(1)。
3.2 队列习题1:请问队列可以用哪些方式实现?答案:队列可以用数组或链表来实现。
数据结构第2版习题答案
数据结构第2版习题答案第1章:引言数据结构是计算机科学中非常重要的一个领域,它关注如何以高效的方式组织和存储数据,以及如何在数据集合中进行操作和处理。
本章将回答《数据结构第2版》中的习题,帮助读者更好地理解和掌握数据结构。
第2章:算法分析习题1:算法复杂度问题描述:给定一个算法中的递归函数,分析其时间复杂度。
解答:对于递归算法的时间复杂度分析,可以使用递归树或者递推关系式来求解。
根据习题中给出的递归函数具体形式,我们可以推导出其递归关系式,并通过求解递推关系式确定时间复杂度。
习题2:渐进符号问题描述:给定两个函数f(n)和g(n),证明f(n)的渐进复杂度小于等于g(n)的渐进复杂度。
解答:为了证明f(n)的渐进复杂度小于等于g(n)的渐进复杂度,我们需要使用大O符号进行形式化的证明。
通过定义和性质的证明,可以得出结论。
第3章:线性表习题3:线性表的实现问题描述:实现一个线性表的数据结构,并给出相关操作的算法。
比如插入元素、删除元素、查找元素等。
解答:一个线性表可以通过数组或链表来实现。
我们可以定义一个包含元素和相关操作的类来表示线性表。
在插入、删除、查找元素等操作中,可以通过遍历或者索引等方式来实现。
习题4:线性表的应用问题描述:举例介绍线性表的应用场景,并分析其对应的实现方法和复杂度。
解答:线性表的应用场景非常广泛,比如数组、链表、队列、栈等。
我们可以通过具体的案例,如存储学生成绩、处理任务队列、实现表达式求值等,来说明线性表的应用和对应的实现方法。
第4章:栈和队列习题5:栈和队列的实现问题描述:实现一个栈和队列的数据结构,并给出相关操作的算法。
解答:栈和队列可以通过数组或链表来实现。
我们可以定义相应的类来表示栈和队列,并实现相关操作,如入栈、出栈、入队、出队等。
习题6:栈和队列的应用问题描述:举例介绍栈和队列的应用场景,并分析其对应的实现方法和复杂度。
解答:栈和队列的应用非常广泛,比如表达式求值、括号匹配、图的深度优先搜索等。
国家开放大学《数据结构(本)》形考作业1-4参考答案
国家开放大学《数据结构(本)》形考作业1-4参考答案形考作业1一、单项选择题(每小题3分,共60分)1.把数据存储到计算机中,并具体体现数据元素间的逻辑结构称为()。
A. 算法的具体实现B. 物理结构C. 逻辑结构D. 给相关变量分配存储单元2.下列说法中,不正确的是()。
A. 数据项是数据中不可分割的最小可标识单位B. 数据元素是数据的基本单位C. 数据项可由若干个数据元素构成D. 数据可有若干个数据元素构成3.一个存储结点存储一个()。
A. 数据结构B. 数据元素C. 数据类型D. 数据项4.数据结构中,与所使用的计算机无关的是数据的()。
A. 物理和存储结构B. 物理结构C. 逻辑结构D. 存储结构5.在线性表的顺序结构中,以下说法正确的是()。
A. 逻辑上相邻的元素在物理位置上不一定相邻B. 逻辑上相邻的元素在物理位置上也相邻C. 进行数据元素的插入、删除效率较高D. 数据元素是不能随机访问的6.对链表, 以下叙述中正确的是()。
A. 结点占用的存储空间是连续的B. 插入删除元素的操作一定要要移动结点C. 可以通过下标对链表进行直接访问D. 不能随机访问任一结点7.下列的叙述中,不属于算法特性的是()。
A. 可读性B. 输入性C. 可行性D. 有穷性8.算法的时间复杂度与()有关。
A. 算法本身B. 计算机的操作系统C. 数据结构D. 所使用的计算机9.设有一个长度为n的顺序表,要在第i个元素之前(也就是插入元素作为新表的第i个元素),插入一个元素,则移动元素个数为()。
A. n-i+1B. n-i-1C. n-iD. i10.设有一个长度为n的顺序表,要删除第i个元素移动元素的个数为()。
A. iB. n-iC. n-i-1D. n-i+111.在一个单链表中,p、q分别指向表中两个相邻的结点,且q所指结点是p所指结点的直接后继,现要删除q所指结点,可用语句()。
A. p->next=q->nextB. p=q->nextC. p->next=qD. q->next=NULL12.在一个单链表中p所指结点之后插入一个s所指的结点时,可执行()。
北语17春《C#》作业11满分答案
17春《C#》作业1
试卷总分:100 得分:100
一、单选题 (共 10 道试题,共 40 分)
1. C#数组主要有三种形式,它们是()。
A. 一维数组、二维数组、三维数组
B. 整型数组、浮点型数组、字符型数组
C. 一维数组、多维数组、不规则数组
D. 一维数组、二维数组、多维数组
满分:4 分
正确答案:C
2. 下面属于合法变量名的是()。
A. P_qr
B. 123mnp
C. char
D. x-y
满分:4 分
正确答案:A
3. 枚举类型是一组命名的常量集合,所有整形都可以作为枚举类型的基本类型,如果类型省略,则定义为()。
A. int
B. sbyte
C. uint
D. ulong
满分:4 分
正确答案:A
4. 下列选项中,不属于值类型的是()
A. struct
B. Int32
C. Int
D. string
满分:4 分
正确答案:A
5. 如果左操作数大于右操作数,()运算符返回false。
A. =
B. <
C. <=。
数据结构第2版习题答案—
数据结构(C语言版)(第2版)课后习题答案xx2015.3目录第1章绪论..................................................................................错误!未定义书签。
第2章线性表 ..............................................................................错误!未定义书签。
第3章栈和队列...........................................................................错误!未定义书签。
第4章串、数组和广义表 ...........................................................错误!未定义书签。
第5章树和二叉树.......................................................................错误!未定义书签。
第6章图........................................................................................错误!未定义书签。
第7章查找 ..................................................................................错误!未定义书签。
第8章排序..................................................................................错误!未定义书签。
II数据结构第2版习题答案—第1xx 绪论1.简述下列概念:数据、数据元素、数据项、数据对象、数据结构、逻辑结构、存储结构、抽象数据类型。
东师《数据结构》17春在线作业2
B. p->rtag = = 1
C. p ! = NULL
D. p->lchild ! = NULL
正确答案:
8.若一组记录的排序码为{ 46,79,56,38,40,84 },则利用堆排序的方法建立的初始堆为( )。
A. 79,46,56,38,40,84
B. 84,79,56,38,40,46
C. 84,79,56,46,40,38
D. 84,56,79,40,46,38
正确答案:
9. B+树应用在()文件系统中。
A. ISAM
B. VSAM
C.顺序
D.散列
正确答案:
10. head指向的非空的单循环链表的尾结点(由p所指向)满足( )。
A. p->next = = NULL
B. p = = NULL
A. head = = NULL
B. head->next = = head
C. head ! = NULL
D. head->next = = NULL
正确答案:
18.求图的最小(代价)生成树问题,考虑的是下面的哪一种图()。
A.无向图
B.有向图
C.带权的无向图
D.带权的有向图
正确答案:
19.设s1 = "abc",则strlen(s1) = ( )。
A.串是字符的有限序列
B.空串是由空格构成的串
C.模式匹配是串的一种重要运算
D.串既可以采用顺序存储,也可以采用链式存储
正确答案:
18.在下述几种排序方法中,不稳定的排序方法是()。
A.直接插入排序
北大17秋08281006-数据结构作业答案
一、单选题(共30题,每题1分,共30分)
每空有一个正确选择,请将正确的选择填在题号前边。
(每空1分,共30分) 1. (第一章)数据的逻辑结构被形式地定义为B=(K,R),其中K 是 ______的有限集合。
试题编号:1.01.1
试题类型:单选题
标准答案:C
试题难度:一般
试题解析:***
考生答案:C
考生得分:***
是否评分:未评分
评价描述:***
2. (第一章)数据的逻辑结构被形式地定义为B=(K,R),其中R 是K 上的______的有限集合。
试题编号:1.01.2
试题类型:单选题
标准答案:H
试题难度:一般
试题解析:***
考生答案:H
考生得分:***
是否评分:未评分
评价描述:***
3. (第一章)以下关于算法的说法不正确的是______________。
北语20春《数据结构》作业2.doc
1.A.AB.BC.CD.D【参考答案】: B2.设数据结果A=(D,R),其中D={1,2,3,4},R={r},r={<1,2>,<2,3>,<3,4>,<4,1>},则数据结构A是___。
A.线性结构B.树型结构C.图型结构D.集合【参考答案】: C3.有一个有序表{1,3,9,12,32,41,45,62,75,77,82,95,100},当折半查找值为82的结点时,___次比较后查找成功。
A.11B.5C.4D.8【参考答案】: C4.线性表的链式存储结构是一种___。
A.随机存取的存储结构B.顺序存取的存储结构C.索引存取的存储结构 D.Hash存取的存储结构【参考答案】: A5.若已知一个栈序列是1,2,3,...,n,其输出序列为p1,p2,p3,...,pn,若p1=n,则pi为___。
A.iB.n-iC.n-i1D.不确定【参考答案】: C6.栈的插入和删除操作在___进行。
A.栈顶B.栈底C.任意位置D.指定位置【参考答案】: A7.在一棵度为3的树中,度为3的结点个数为2,度为2的结点个数为1,则度为0的结点个数为___。
A.4B.5C.6D.7【参考答案】: C8.深度为5的二叉树至多有___个结点。
A.16B.32C.31D.10【参考答案】: C9.A.AB.BC.CD.D【参考答案】: A10.对一个满二叉树,m个叶子,n个结点,深度为h,则___。
A.n=hmB.hm=2nC.m=h-1D.n=2h-1【参考答案】: D11.A.AB.BC.CD.D【参考答案】: B12.算法分析的两个主要方面是___。
A.空间复杂度和时间复杂度B.正确性和简明性C.可读性和文档性D.数据复杂性和程序复杂性【参考答案】: A13.下列关于数据结构基本概念的叙述中,正确的是______。
A.数据的逻辑结构分为表结构和树结构B.数据的存储结构分为线性结构和非线性结构C.数据元素是数据的基本单位D.结点是有独立含义的数据最小单位【参考答案】: C14.A.AB.BC.CD.D【参考答案】: D15.在长度为n的顺表表的第i个位置上插入一个元素(1≤i≤n+1),元素的移动次数为___。
《数据结构》国开02272形考任务(1-4)试题与答案汇总
《数据结构》国开02272形考任务(1-4)试题与答案汇总一、选择题(每题5分,共20分)1. 数据的逻辑结构就是数据的(A)A. 元素之间的关系B. 物理结构C. 元素的值D. 元素的数量2. 线性表的存储结构有(D)A. 顺序存储和链式存储B. 顺序存储和索引存储C. 链式存储和散列存储D. 顺序存储、链式存储和索引存储3. 下面哪个不是线性表的运算(C)A. 插入B. 删除C. 排序D. 查找4. 在长度为n的线性表中,删除第i个元素(i从1开始),需要移动(A)A. n-i个元素B. i个元素C. n个元素D. 0个元素答案:AADB二、填空题(每题5分,共20分)1. 长度为n的线性表,其元素一共有n个。
2. 线性表的顺序存储结构是利用一组地址连续的存储单元依次存储线性表的元素。
3. 在线性表中,删除第i个元素后,从第i个元素到表尾的所有元素都向前移动一个位置。
4. 栈是一种特殊的线性表,只允许在表的一端进行插入和删除操作。
答案:略三、判断题(每题5分,共20分)1. 线性表是一种最基本的数据结构,它的特点是数据元素之间是一对一的关系。
(正确)2. 顺序存储结构的特点是存取方便,但插入和删除操作需要移动大量元素。
(正确)3. 链式存储结构的特点是不需要连续的存储空间,但插入和删除操作需要修改指针。
(正确)4. 栈和队列都是线性结构,但栈的操作是后进先出,而队列的操作是先进先出。
(正确)答案:略四、简答题(每题10分,共40分)1. 简述线性表的顺序存储结构的特点。
(10分)顺序存储结构是利用一组地址连续的存储单元依次存储线性表的元素。
其特点是存取方便,时间复杂度为O(1)。
但插入和删除操作需要移动大量元素,时间复杂度为O(n)。
2. 简述线性表的链式存储结构的特点。
(10分)链式存储结构是由一系列结点组成的线性序列,每个结点包含数据域和指针域。
其特点是无需连续的存储空间,插入和删除操作只需修改指针,时间复杂度为O(1)。
数据结构作业题答案
1.已知长度为n的线性表,表中元素是大于0的整数。
设计一个算法:(1)删除表中的奇数;(2)删除表中序号是奇数的元素;(1)void DeleteItem(SqList *&L){int e,i=0;while(i<L->length)if(L->data[i]%2==1){e=L->data[i];for(int j=i;j<L->length-1;j++)L->data[j]=L->data[j+1];L->length--;}elsei++;}(2)void DeleteNum(SqList *&L,ElemType a[],int &n) {int i=1,j=-1;while(i<=n){a[++j]=a[i];i+=2;}n=j+1;L->length=n;for(int k=0;k<L->length;k++)printf("%d\t",a[k]);printf("\n");}2.已知一个长度为n的非空线性表,采用顺序存储结构,将元素按大小非递减顺序排列。
编写一个算法:删除值相同的多余元素。
(要求:时间复杂度为n)void DeleteSame(SqList *&L,ElemType a[],int &n){int k=0;if(n>1){for(int i=1;i<n;i++)if(a[i]!=a[k])a[++k]=a[i];n=k+1;}}void DeleteSame(SqList *L){for(int i=0;i<L->length-1;i++){int j;for(j=i+1;j<L->length;j++)if(L->data[i]==L->data[j]){for (int k=j+1;k<L->length;k++)L->data[k-1]=L->data[k];L->length--;j--;}}}3.在一个有序(非递减顺序)单链表中,插入一个新的数据元素,保持原表的有序性。
北语17春算法与数据分析作业2
一、单项选择题(共 10 道试题,共 50 分。
) V 1. 分支限界法解最大团问题时,活扣点表的组织形式是A. 最小堆B. 最大堆C. 栈D. 数组2. 贪婪算法与动态计划算法的一起点是A. 重叠子问题B. 构造最优解C. 贪婪选择性质D. 最优子结构性质3. 蒙特卡罗算法是以下的哪一种A. 分支界限算法B. 概率算法C. 贪婪算法D. 回溯算法4. 下面是贪婪算法的大体要素的是A. 重叠子问题B. 构造最优解C. 贪婪选择性质D. 概念最优解5. 下面关于NP问题说法正确的选项是A. NP问题都是不可能解决的问题B. P类问题包括在NP类问题中C. NP完全问题是P类问题的子集D. NP类问题包括在P类问题中6. 以下哪一种算法不是随机化算法A. 蒙特卡罗算法B. .拉斯维加斯算法C. .动态计划算法D. .舍伍德算法7. 矩阵连乘问题的算法可由什么设计实现A. 分支界限算法B. 动态计划算法C. 贪婪算法D. 回溯算法8. 舍伍德算法是以下的哪一种A. 分支界限算法B. 概率算法C. 贪婪算法D. 回溯算法9. 下面哪一种函数是回溯法中为幸免无效搜索采取的策略A. 递归函数B. .剪枝函数C. 。
随机数函数D. .搜索函数10. 最长公共子序列算法利用的算法是A. 分支界限法B. 动态计划法C. 贪婪法D. 回溯法二、判定题(共 10 道试题,共 50 分。
) V 1. 大整数乘积算法是用分治法来设计的。
A. 错误B. 正确2. 拉斯维加斯算法找到的解不必然是正确解A. 错误B. 正确3. 矩阵连乘问题的算法可由动态计划设计实现A. 错误B. 正确4. 以广度优先或以最小花费方式搜索问题解的算法称为分支限界法。
A. 错误B. 正确5. 贪婪选择性质是贪婪算法可行的第一个大体要素,也是贪婪算法与动态计划算法的要紧区别。
A. 错误B. 正确6. 快速排序算法不是基于分治策略的一种排序算法。
A. 错误B. 正确7. 动态计划算法的大体思想是将待求解问题分解成假设干子问题,先求解子问题,然后从这些子问题的解取得原问题的解。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
满分:5分
正确答案:A
11.
A. A
B. B
C. C
D. D
满分:5分
正确答案:C
12.数据结构在计算机内存中的表示是指___。
A.数据的存储结构
B.数间的关系
满分:5分
正确答案:A
13.算法分析的目的是___。
A.找出数据结构的合理性
B.研究算法中的输入和输出的关系
C.可读性和文档性
D.数据复杂性和程序复杂性
满分:5分
正确答案:A
7.
A. a
B. b
C. c
D. d
满分:5分
正确答案:B
8.在一个长度为n(n>1)的单链表上,设有头和尾两个指针,执行___操作与链表的长度有关。
A.删除单链表中的第一个元素
B.删除单链表中的最后一个元素
C.在单链表第一个元素前插入一个新元素
A.
1000
B.
860
C.
1140
D.
1200
满分:5分
正确答案:A
C. 5
D. 8
满分:5分
正确答案:A
16.
A. A
B. B
C. C
D. D
满分:5分
正确答案:A
17.
A. A
B. B
C. C
D. D
满分:5分
正确答案:B
18.
A. A
B. B
C. C
D. D
满分:5分
正确答案:D
19.
A. A
B. B
C. C
D. D
满分:5分
正确答案:B
20.
设二维数组A[6][10],每个数组元素占用4个存储单元,若按行优先顺序存放数组元素,a[0][0]的存储地址为860,则a[3][5]的存储地址是___。
C. 11
D. 12
满分:5分
正确答案:C
5.设有5000个待排序的记录关键字,如果需要用最快的方法选出其中最小的10个记录关键字,则用下列___方法可以达到此目的。
A.快速排序
B.堆排序
C.归并排序
D.插入排序
满分:5分
正确答案:B
6.算法分析的两个主要方面是___。
A.空间复杂度和时间复杂度
B.正确性和简明性
正确答案:C
2.需要分配较大空间,插入和删除不需要移动元素的线性表,其存储结构是___。
A.单链表
B.静态链表
C.线性链表
D.顺序存储结构
满分:5分
正确答案:B
3.
A. A
B. B
C. C
D. D
满分:5分
正确答案:C
4.设某棵二叉树中有2000个结点,则该二叉树的最小高度为___。
A. 9
B. 10
C.分析算法的效率以求改进
D.分析算法的易读性和文档性
满分:5分
正确答案:C
14.
A. A
B. B
C. C
D. D
满分:5分
正确答案:D
15.设一组初始记录关键字序列为(345,253,674,924,627),则用基数排序需要进行___趟的分配和回收才能使得初始关键字序列变成有序序列。
A. 3
B. 4
D.在单链表最后一个元素后插入一个新元素
满分:5分
正确答案:B
9.下列四种排序中___的空间复杂度最大。
A.插入排序
B.冒泡排序
C.堆排序
D.归并排序
满分:5分
正确答案:D
10.在长度为n的顺表表的第i个位置上插入一个元素(1≤i≤n+1),元素的移动次数为___。
A. n-i+1
B. n-i
C. i
17春《数据结构》作业2
试卷总分:100得分:100
一、单选题(共20道试题,共100分)
1.设一组初始记录关键字序列(5,2,6,3,8),以第一个记录关键字5为基准进行一趟快速排序的结果为___。
A. 2,3,5,8,6
B. 3,2,5,8,6
C. 3,2,5,6,8
D. 2,3,6,5,8
满分:5分