数据结构课程三套作业及答案分析

合集下载

数据结构各章习题和答案解析

数据结构各章习题和答案解析

数据结构习题及解答第1章 概述【例1-1】分析以下程序段的时间复杂度。

for(i=0;i<n;i++)for(j=0;j<m;j++)A[i][j]=0; 解:该程序段的时间复杂度为O(m*n)。

【例1-2】分析以下程序段的时间复杂度。

i=s=0; ①while(s<n){ i++; ② s+=i; ③}解:语句①为赋值语句,其执行次数为1次,所以其时间复杂度为O(1)。

语句②和语句③构成while 循环语句的循环体,它们的执行次数由循环控制条件中s 与n 的值确定。

假定循环重复执行x 次后结束, 则语句②和语句③各重复执行了x 次。

其时间复杂度按线性累加规则为O(x)。

此时s 与n 满足关系式:s ≥n ,而s=1+2+3+…+x 。

所以有:1+2+3+…+x ≥n ,可以推出: x=n n 241212811+±-=+±-x 与n 之间满足x=f(n ),所以循环体的时间复杂度为O(n ),语句①与循环体由线性累加规则得到该程序段的时间复杂度为O(n )。

【例1-3】分析以下程序段的时间复杂度。

i=1; ① while(i<=n)i=2*i; ②解:其中语句①的执行次数是1,设语句②的执行次数为f(n),则有:n n f ≤)(2。

得:T(n)=O(n2 log)【例1-4】有如下递归函数fact(n),分析其时间复杂度。

fact(int n){ if(n<=1)return(1); ①elsereturn(n*fact(n-1)); ②}解:设fact(n)的运行时间函数是T(n)。

该函数中语句①的运行时间是O(1),语句②的运行时间是T(n-1)+ O(1),其中O(1)为常量运行时间。

由此可得fact(n)的时间复杂度为 O(n)。

习题1一、单项选择题1. 数据结构是指(1. A )。

A.数据元素的组织形式B.数据类型C.数据存储结构D.数据定义2. 数据在计算机存储器内表示时,物理地址与逻辑地址不相同的,称之为(2. C )。

数据结构》作业题答案

数据结构》作业题答案

参考答案第一章、绪论一、选择题1 B;2 A; 3 B;4 C ;5 C; 6 B;7 C;8 C;9 D;10 B。

二、填空题1、存储;2、无,1,无,1;3、前驱,1,后继,任意多个;4、一对一,一对多,多对多;5、时间复杂度,空间复杂度;6、集合,线性结构,树形结构,图形结构;7、顺序结构,链式结构,索引结构,散列结构;8、顺序。

三、问答题与算法题1、3 ;2、T1 ( n ) = 5n 2 -O ( n ) ; T2 ( n ) = 3 n 2 + O ( n ) ; T3 ( n ) = 8 n 2 + O(log n) ;T4 ( n ) = 1.5 n 2 + O ( n ) 。

T4 ( n ) 较优,T3 ( n )较劣。

3、见课本。

第二章线性表一、选择题1C;2A;3D;4B;5D;6B;7C;8B;9A;10C;11D;12D;13C;14C.二、填空题1、O ( 1 ), O ( n );2、单链表,双链表;3、地址,指针;4、4,2;5、便于访问尾结点和头结点;6、前驱;7、L->next== L且L->prior== L;8、顺序。

三、问答题与算法题1、头指针:结点或头结点的指针变量。

其作用是存放第一个结点或头结点的地址,从头指针出发可以找到链表中所有结点的信息。

头结点:是附加在链表的第一个结点之前的一个特殊结点,其数据域一般不存放信息。

其作用是为了简化运算,将空表与非空表统一起来,将第一个结点与其他结点的处理统一起来。

首结点:是链表的第一个结点。

2、(1)基于空间的考虑。

当要求存储的线性表长度变化不大,易于事先确定其大小时,为了节约存储空间,宜采用顺序表;反之,当线性表长度变化大,难以估计其存储规模时,采用动态链表作为存储结构为好。

(2)基于时间的考虑。

若线性表的操作主要是进行查找,很少做插入和删除操作时,采用顺序表做存储结构为宜;反之,若需要对线性表进行频繁地插入或删除等的操作时,宜采用链表做存储结构。

数据结构习题和答案及解析

数据结构习题和答案及解析

数据结构习题和答案及解析数据结构是计算机科学中非常重要的一个领域,它关注数据的存储、组织和管理方式。

在学习数据结构的过程中,遇到习题是必不可少的,通过解答这些习题可以更好地理解和掌握数据结构的概念和应用。

以下是一些常见的数据结构习题及其答案和解析,希望可以帮助读者更好地学习和理解数据结构。

习题一:栈的应用题目描述:设计一个栈,使其具有获取栈中最小元素的操作。

解答及解析:可以通过两个栈来实现,一个栈用于存储数据,另一个栈用于存储当前最小元素。

在入栈时,如果新的元素比当前最小元素小,则将新元素同时入栈到数据栈和最小栈;在出栈时,如果当前出栈元素与最小栈的栈顶元素相同,则同时出栈。

这样,最小栈的栈顶元素始终为当前栈的最小元素。

习题二:队列的应用题目描述:设计一个队列,使其具有获取队列中最大元素的操作。

解答及解析:可以通过两个队列来实现,一个队列用于存储数据,另一个队列用于存储当前最大元素。

在入队时,如果新的元素比当前最大元素大,则将新元素同时入队到数据队列和最大队列;在出队时,如果当前出队元素与最大队列的队首元素相同,则同时出队。

这样,最大队列的队首元素始终为当前队列的最大元素。

习题三:链表的操作题目描述:给定一个链表,删除链表中倒数第n个节点,并返回链表的头节点。

解答及解析:使用双指针法来解决该问题。

首先让一个指针从链表的头节点向前移动n+1步,然后再让另一个指针从链表的头节点开始移动。

这样两个指针之间的间隔为n,当第一个指针到达链表末尾时,第二个指针指向的节点就是倒数第n个节点的前一个节点。

接着,将第二个指针指向的节点的next指针指向下下个节点,完成删除操作。

习题四:树的遍历题目描述:给定一个二叉树,按照中序遍历的顺序返回其节点值的集合。

解答及解析:采用递归的方式进行中序遍历,先遍历左子树,然后访问根节点,最后遍历右子树。

对于任意一个节点,递归遍历其左子树,将节点值添加到集合中。

然后访问该节点,并将节点值添加到集合中。

数据结构与算法设计课后习题及答案详解

数据结构与算法设计课后习题及答案详解

数据结构与算法设计课后习题及答案详解1. 习题一:数组求和题目描述:给定一个整数数组,编写一个函数来计算它的所有元素之和。

解题思路:遍历数组,将每个元素累加到一个变量中,最后返回累加和。

代码实现:```pythondef sum_array(arr):result = 0for num in arr:result += numreturn result```2. 习题二:链表反转题目描述:给定一个单链表,反转它的节点顺序。

解题思路:采用三指针法,依次将当前节点的下一个节点指向上一个节点,然后更新三个指针的位置,直到链表反转完毕。

代码实现:```pythonclass ListNode:def __init__(self, val=0, next=None):self.val = valself.next = nextdef reverse_list(head):prev = Nonecurr = headwhile curr:next_node = curr.nextcurr.next = prevprev = currcurr = next_nodereturn prev```3. 习题三:二叉树的层序遍历题目描述:给定一个二叉树,返回其节点值的层序遍历结果。

解题思路:采用队列来实现层序遍历,先将根节点入队,然后循环出队并访问出队节点的值,同时将出队节点的左右子节点入队。

代码实现:```pythonclass TreeNode:def __init__(self, val=0, left=None, right=None): self.val = valself.left = leftself.right = rightdef level_order(root):if not root:return []result = []queue = [root]while queue:level = []for _ in range(len(queue)):node = queue.pop(0)level.append(node.val)if node.left:queue.append(node.left)queue.append(node.right)result.append(level)return result```4. 习题四:堆排序题目描述:给定一个无序数组,使用堆排序算法对其进行排序。

数据结构习题(包含全部答案解析)

数据结构习题(包含全部答案解析)

数据结构习题集(自编)第一章绪论一、选择题1.数据结构是一门研究非数值计算的程序设计问题中的操作对象以及它们之间的()和运算的学科。

A.结构B.关系 C.运算 D.算法2.在数据结构中,从逻辑上可以把数据结构分成()。

A.动态结构和静态结构 B.紧凑结构和非紧凑结构C.线性结构和非线性结构 D.逻辑结构和存储结构3.线性表的逻辑顺序和存储顺序总是一致的,这种说法()。

A.正确B.不正确 C.无法确定 D.以上答案都不对4.算法分析的目的是()。

A.找出算法的合理性 B.研究算法的输人与输出关系C.分析算法的有效性以求改进 D.分析算法的易懂性5. 算法的时间复杂度取决于()A.问题的规模B待处理数据的初态 C. A和B6.一个算法应该是()。

A.程序B.问题求解步骤的描述C.要满足五个基本特性 D.A和C.7. 下面关于算法说法错误的是()A.算法最终必须由计算机程序实现B.为解决某问题的算法与为该问题编写的程序含义是相同的C. 算法的可行性是指指令不能有二义性D. 以上几个都是错误的8.以下与数据的存储结构无关的术语是()。

A.循环队列 B. 链表 C. 哈希表 D. 栈9.在下面的程序段中,对x的赋值语句的频度为()for(i=0;i<n;i++)for(j=0;j<n;j++)x=x+1;nA. 2n B.n C.n2 D.log210.以下数据结构中,()是非线性数据结构A.树 B.字符串 C.队列 D.栈11. 下列数据中,()是线性数据结构。

A.哈夫曼树 B.有向无环图 C. 二叉排序树 D. 栈12.以下属于逻辑结构的是()。

A.顺序表 B. 哈希表 C.有序表 D. 单链表二、填空题1、_______是信息的载体,是对客观事物的符号表示,它能够被计算机识别、存储、加工和处理,________是对能够有效的输人到计算机中并且能够被计算机处理的符号的总称。

(数据、数据)2、数据元素是数据的______,有些情况下也称为元素、结点、顶点、记录等。

数据结构(C语言版)习题参考答案

数据结构(C语言版)习题参考答案

数据结构(C语言版)习题参考答案数据结构(C语言版)习题参考答案1. 数据结构简介数据结构是计算机科学中重要的概念之一,它关注如何组织和存储数据,以便有效地进行访问和操作。

C语言是一种广泛应用于数据结构实现的编程语言。

本文将提供一些常见数据结构习题的参考答案,帮助读者理解和掌握数据结构的基本概念与实现。

2. 数组数组是一种线性结构,存储具有相同数据类型的元素。

以下是一些数组习题的参考答案:2.1 统计数组中某个元素出现的次数```int countOccurrences(int arr[], int n, int x) {int count = 0;for (int i = 0; i < n; i++) {if (arr[i] == x) {count++;}}return count;}```2.2 查找数组中的最大值和最小值```void findMinMax(int arr[], int n, int* min, int* max) { *min = arr[0];*max = arr[0];for (int i = 1; i < n; i++) {if (arr[i] < *min) {*min = arr[i];}if (arr[i] > *max) {*max = arr[i];}}}```3. 链表链表是一种动态数据结构,每个节点包含数据和指向下一个节点的指针。

以下是一些链表习题的参考答案:3.1 反转链表```Node* reverseLinkedList(Node* head) {Node* prev = NULL;Node* curr = head;while (curr != NULL) {Node* next = curr->next;curr->next = prev;prev = curr;curr = next;}return prev;}```3.2 合并两个有序链表```Node* mergeLists(Node* list1, Node* list2) {if (list1 == NULL) {return list2;}if (list2 == NULL) {return list1;}if (list1->data < list2->data) {list1->next = mergeLists(list1->next, list2);return list1;} else {list2->next = mergeLists(list1, list2->next);return list2;}}```4. 栈和队列栈和队列是两种重要的线性数据结构,栈支持后进先出(LIFO),队列支持先进先出(FIFO)。

数据结构习题和答案及解析

数据结构习题和答案及解析

⑷下面〔〕不是算法所必须具备的特性。

A 有穷性B 确切性C 高效性D 可行性【解答】C【分析】高效性是好算法应具备的特性。

⑸算法分析的目的是〔〕,算法分析的两个主要方面是〔〕。

A 找出数据结构的合理性B 研究算法中输入和输出的关系C 分析算法的效率以求改良D 分析算法的易读性和文档性E 空间性能和时间性能F 正确性和简明性G 可读性和文档性 H 数据复杂性和程序复杂性【解答】C,E3. 判断题⑴算法的时间复杂度都要通过算法中的根本语句的执行次数来确定。

【解答】错。

时间复杂度要通过算法中根本语句执行次数的数量级来确定。

⑵每种数据结构都具备三个根本操作:插入、删除和查找。

【解答】错。

如数组就没有插入和删除操作。

此题注意是每种数据结构。

⑶所谓数据的逻辑结构指的是数据之间的逻辑关系。

【解答】错。

是数据之间的逻辑关系的整体。

⑷逻辑结构与数据元素本身的内容和形式无关。

【解答】对。

因此逻辑结构是数据组织的主要方面。

⑸基于某种逻辑结构之上的根本操作,其实现是唯一的。

【解答】错。

根本操作的实现是基于某种存储结构设计的,因而不是唯一的。

【解答】⑴根本语句是k=k+10*i,共执行了n-2次,所以T(n)=O(n)。

⑵根本语句是k=k+10*i,共执行了n次,所以T(n)=O(n)。

⑶分析条件语句,每循环一次,i+j 整体加1,共循环n次,所以T(n)=O(n)。

⑷设循环体共执行T(n)次,每循环一次,循环变量y加1,最终T(n)=y,即:(T(n)+1)2≤n,所以T(n)=O(n1/2)。

⑸ x++是根本语句,所以5.设有数据结构〔D,R〕,其中D={1, 2, 3, 4, 5, 6},R={(1,2),(2,3),(2,4),(3,4),(3,5),(3,6),(4,5),(4,6)}。

试画出其逻辑结构图并指出属于何种结构。

【解答】其逻辑结构图如图1-3所示,它是一种图结构。

6. 为整数定义一个抽象数据类型,包含整数的常见运算,每个运算对应一个根本操作,每个根本操作的接口需定义前置条件、输入、功能、输出和后置条件。

数据结构作业及答案汇总

数据结构作业及答案汇总

数据结构作业及答案汇总数据结构是计算机科学中的一个重要概念,它涉及到组织和管理数据的方式和方法。

在学习数据结构的过程中,作业和答案总结是帮助我们巩固知识和理解的重要步骤。

本文将对数据结构作业及答案进行汇总,以便帮助读者更好地学习和掌握数据结构知识。

作业一:栈和队列1. 描述栈和队列的基本特点,并给出它们的应用场景。

栈是一种容器,它具有后进先出(LIFO)的特点。

常见的应用场景有程序调用栈、浏览器的前进后退功能等。

队列是一种容器,它具有先进先出(FIFO)的特点。

常见的应用场景有任务调度、消息队列等。

2. 设计一个栈,使其具有查找最小元素的功能。

给出实现代码和分析时间复杂度。

3. 设计一个队列,使其具有查找最大元素的功能。

给出实现代码和分析时间复杂度。

作业二:链表1. 描述链表的基本特点,并给出它的应用场景。

链表是一种数据结构,它由一系列节点组成。

每个节点包含数据和指向下一节点的指针。

常见的应用场景有实现链表、存储大量数据等。

2. 设计一个单向链表,使其具有反转链表的功能。

给出实现代码和分析时间复杂度。

3. 设计一个双向链表,使其具有插入和删除节点的功能。

给出实现代码和分析时间复杂度。

作业三:树1. 描述树的基本特点,并给出它的应用场景。

树是一种非线性数据结构,它由节点和边组成。

常见的应用场景有文件系统、数据库索引等。

2. 设计一个二叉树,实现遍历功能(前序、中序、后序)。

给出实现代码和分析时间复杂度。

3. 设计一个平衡二叉树,使其具有快速查找节点的功能。

给出实现代码和分析时间复杂度。

作业四:图1. 描述图的基本特点,并给出它的应用场景。

图是一种由顶点和边组成的数据结构,边表示顶点之间的关系。

常见的应用场景有社交网络、地图导航等。

2. 设计一个有向图,实现深度优先搜索(DFS)算法。

给出实现代码和分析时间复杂度。

3. 设计一个无向图,实现广度优先搜索(BFS)算法。

给出实现代码和分析时间复杂度。

答案汇总:在本文中,我们对栈、队列、链表、树和图这几个常见的数据结构进行了作业设计和答案汇总。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

数据结构课程作业_A一、单选题。

1.(7分)对完全二叉树叙述正确的是( C )。

A.完全二叉树就是满二叉树B.完全二叉树和满二叉树编号不对应C.完全二叉树同一层上左子树未满不会有右子树D. 以上都不正确知识点:第六章解析第六章第二节二叉树的性质C )。

2.(7分)堆的形状是一棵(A. 二叉排序树B.满二叉树C.完全二叉树D.一般的二叉树知识点:第十章解析第十章第四节堆排序)。

3.(7分)设一棵完全二叉树中有65个结点,则该完全二叉树的深度为(BA. 8B.7C.6D. 5知识点:第六章解析第六章第六节二叉树的性质D )4.(7分)以下数据结构中哪一个是非线性结构?(A. 队列B.栈C.线性表D.二叉树知识点:第一章解析第一章第二节综合题目A )。

5.(7分)线性表的顺序存储结构是一种?的存储结构(A. 随机存取B.顺序存取C.索引存取D.散列存取知识点:第二章解析第二章第二节综合题目C )。

6.(7分)带头节点的单链表L为空的判定条件是( A. L==nullB.L->data==nullC.L->next==nullD.L->next==data知识点:第二章解析第二章第三节线性链表7.(7分)设一组初始记录关键字序列为(45,80,55,40,42,85),则以第一个记录关键C )。

字45为基准而得到一趟快速排序的结果是(A. 40,42,45,55,80,83B.42,40,45,80,85,88C.42,40,45,55,80,85D.42,40,45,85,55,80知识点:第十章解析第十章第三节综合题目8.(7分)设一组初始关键字记录关键字为(20,15,14,18,21,36,40,10),则以20A )。

为基准记录的一趟快速排序结束后的结果为( A. 10,15,14,18,20,36,40,21B.10,15,14,18,20,40,36,21C.10,15,14,20,18,40,36,2lD.15,10,14,18,20,36,40,21知识点:第十章解析第十章第三节综合题目9.(7分)设一组初始记录关键字序列(5,2,6,3,8),以第一个记录关键字5为基准进行C )。

一趟快速排序的结果为( A. 2,3,5,8,6B.3,2,5,8,6C.3,2,5,6,8D.2,3,6,5,8知识点:第十章解析第十章第三节综合题目10.(7分)设指针变量p指向单链表结点A,则删除结点A的后继结点B需要的操作为(A )。

A.p->next=p->next->nextB.p=p->nextC.p=p->next->nextD.p->next=p知识点:第二章解析第二章第三节线性链表二、判断。

1.(6分)栈和队列都是操作受限的线性表。

答案:正确。

解析第三章综合题目2.(6分)分块查找的平均查找长度不仅与索引表的长度有关,而且与块的长度有关。

答案:正确。

解析第九章第一节索引顺序表的查找3.(6分)数据项是数据的基本单位。

答案:错误。

解析第一章第二节数据项4.(6分)希尔排序是一种稳定的排序方法。

答案:错误。

解析第十章第二节希尔排序5.(6分)二叉排序树上左子树上所有结点的值均小于它的根结点的值。

答案:正确。

解析第九章第二节二叉排序树和平衡二叉树数据结构课程作业_B一、单选题。

1.(7分)设某强连通图中有n个顶点,则该强连通图中至少有( C )条边。

A.n(n-1)B.n+1C.nD.n(n+1)知识点:第七章解析第七章第一节综合题目A )。

2.(7分)链式队列Q为空的判定条件(A. Q.front==Q.rearB.Q.front==QC.Q ==Q.rearD.没有正确答案知识点:第三章解析第三章第四节队列的链式表示和实现A )。

3.(7分)设某无向图中有n个顶点e条边,则建立该图邻接表的时间复杂度为( A. O(n+e)B.O(n2)C.O(ne)D.O(n3)知识点:第七章解析第七章第二节邻接表D )。

4.(7分)图的广度优先遍历算法类似于二叉树的(A. 先序遍历B.中序遍历C.后序遍历D.层次遍历知识点:第七章解析第七章第三节广度优先搜索C )。

5.(7分)图的邻接矩阵表示法适用于表示( A. 有向图B.无向图C.稠密图D.稀疏图知识点:第七章解析第七章第二节数组表示法6.(7分)设输入序列是1、2、3、……、n,经过栈的作用后输出序列的第一个元素是n,则C )。

输出序列中第i个输出元素是( A. n-IB.n-1-IC.n+1-ID. 不能确定知识点:第三章解析第三章第一节栈的表示和实现B)的线性表。

7.(7分)顺序查找适用于存储结构为(A. 散列B.顺序或者链式C.压缩D.索引知识点:第九章解析第九章第一节顺序表的查找D )。

8.(7分)线性表若采用链式存储结构时,要求内存中的可用存储单元的地址?( A. 必须连续B.部分连续C.一定不连续D.可连续可不连续知识点:第二章解析第二章第三节综合题目B)条边。

9.(7分)设无向图G中有n个顶点,则该无向图的最小生成树上有(A. nB.n-1C.2nD.2n-1知识点:第七章解析第七章第四节最小生成树10.(7分)设数组data[m]作为循环队列SQ的存储空间,front为队头指针,rear为队尾指D )。

针,则执行出队操作后其头指针front值为( A. front=front+1B.front=(front+1)%(m-1)C.front=(front-1)%mD.front=(front+1)%m知识点:第三章解析第三章第四节队列的顺序表示和实现二、判断。

1.(6分)二叉排序树上左子树上所有结点的值均小于它的根结点的值。

答案:正确。

解析第九章第二节二叉排序树和平衡二叉树2.(6分)常用的图的遍历方法有深度优先遍历和广度优先遍历。

答案:正确。

解析第七章第三节综合题目3.(6分)数据项是数据的基本单位。

答案:错误。

解析第一章第二节数据项4.(6分)二维数组和多维数组均不是特殊的线性结构。

答案:错误。

解析第五章综合题目5.(6分)分块查找的平均查找长度不仅与索引表的长度有关,而且与块的长度有关。

答案:正确。

解析第九章第一节索引顺序表的查找数据结构课程作业_C一、单选题。

1.(7分)设按照从上到下、从左到右的顺序从1开始对完全二叉树进行顺序编号,则编号为B)。

i结点的左孩子结点的编号为(A. 2i+1B.2iC.i/2D.2i-1知识点:第六章解析第六章第六节二叉树的性质2.(7分)若采用孩子兄弟链表作为树的存储结构,则树的先根遍历应采用二叉树的(B)。

A.层次遍历B.先序遍历C.中序遍历D.后序遍历知识点:第六章解析第六章第四节树的存储结构3.(7分)若有18个元素的有序表存放在一维数组A[19]中,第一个元素放A[1]中,现进行二分查找,则查找A[3]的比较序列的下标依次为( D )。

A.1,2,3B.9,5,2,3C.9,5,3D.9,4,2,3知识点:第九章解析第九章第一节有序表的查找4.(7分)设有序表中有1000个元素,则用二分查找查找元素X最多需要比较(B)次。

A.25B.10C.7D.1知识点:第九章解析第九章第一节有序表的查找D )5.(7分)单链表的结点包含____和_____。

(A. 结点域,符号域B.数据域,符号域C.结点域,指针域D.数据域,指针域知识点:第二章解析第二章第三节线性链表6.(7分)设某棵二叉树的中序遍历序列为ABCD,前序遍历序列为CABD,则后序遍历该二A )。

叉树得到序列为(A. BADCB.BCDAC.CDABD.CBDA知识点:第六章解析第六章第三节遍历二叉树7.(7分)序列278、109、930经过一趟基数排序后结果为( A )。

A.930、278、109B.109、930、278C.109、278、930D.278、109、930知识点:第十章解析第十章第六节多关键字的排序B)个表头结点。

8.(7分)设某有向图中有n个顶点,则该有向图对应的邻接表中有(A. n-1B.nC.n+1D.2n-1知识点:第七章解析第七章第二节邻接表C 9.(7分)设一维数组中有n个数组元素,则读取第i个数组元素的平均时间复杂度为()。

A. O(n)B.O(nlog2n)C.O(1)D.O(n2)知识点:第五章解析第五章第二节综合题目10.(7分)一个栈的入栈序列是A、B、C、D、E,五个元素都入栈后,首次出栈的元素是(B)。

A.AB.EC.BD.D知识点:第三章解析第三章第一节综合题目二、判断。

1.(6分)已知一棵二叉树的先序序列和后序序列,则能够唯一确定出该二叉树的形状。

答案:错误。

解析第六章第三节遍历二叉树2.(6分)归并排序是一种稳定的排序方法。

答案:正确。

解析第十章第五节综合题目3.(6分)邻接表法只能用于有向图存储。

答案:错误。

解析第七章第二节邻接表4.(6分)设初始记录关键字基本有序,则快速排序算法的时间复杂度为O(nlog2n)。

答案:错误。

解析第十章第三节综合题目5.(6分)非空的双向循环链表中任何结点的前驱指针均不为空。

答案:正确。

解析第二章第三节循环链表。

相关文档
最新文档