数据结构错题答案汇总

王道学习

第一章 绪论

1.1

3.A

数据的逻辑结构是从面向实际问题的角度出发的,只采用抽象表达方式,独立于存储结构,数据的存储方式有多种不同的选择;而数据的存储结构是逻辑结构在计算机上的映射,它不能独立于逻辑结构而存在。数据结构包括三个要素,缺一不可。

解:应该注意到,数据的运算也是数据结构的一个重要方面。

对于两种不同的数据结构,它们的逻辑结构和物理结构完全有可能相同。比如二叉树和二叉排序树,二叉排序树可以采用二叉树的逻辑表示和存储方式,前者通常用于表示层次关系,而后者通常用于排序和查找。虽然它们的运算都有建立树、插入结点、/删除结点和查找结点等功能,但对于二叉树和二叉排序树,这些运算的定义是不同的,以查找结点为例,二叉树的时间复杂度为O(n)而二叉排序树的时间复杂度为O(logn)。

解:线性表既可以用顺序存储方式实现,又可以用链式存储方式实现。在顺序存储方式下,在线性表中插入和删除元素,平均要移动近一半的元素,时间复杂度为O(n);而在链式存储方式下.插入和删除的时间复杂度都是O(1)。

1.2



第10题主要是判断递归的次数。当n=1时,没有递归;当n=2时,递归了1次;当n=4时,递归了2次。所以选C。


第16题可以采用举例的方法,当n=2时,sum++运行1次;当n=4时,sum++运行3次;当n=8时,sum++运行7次。所以选B

第二章 线性表

2.1

答案:B

线性表定义的要求为:相同数据类型、有限序列。选项C的元素个数是无穷个,错误;选项A集合中的元素没有前后驱关系,错误;选项D属于存储结构

2.2

第三章 栈、队列和数组

3.1

3.2

第8题可以考虑特殊情况:当队列中只剩下一个元素,考虑此情况就知道答案了。

第10题可以考虑特殊情况:当队列中只剩下一个元素。


第14题考考虑删除的方便性:如果队头在链尾和链中,出队时需要遍历链表;

第21题:rear有两种情况,第一种是rear指向当前的队尾元素;第二种是rear指向队尾元素的下一个位置。

3.3




3.4


第四章 串

4.2


第五章 树与二叉树

5.1

第07是D

第10题:

分析边和结点之间的关系:

对于一棵树而言,除了根结点,每一个结点都对应了一条边(链接其双亲结点)。那么,结点数比边多1就意味着有1个根结点,1个根结点就代表了一棵树。

25结点-15边=10根结点=10树

5.2



5.3





5.4


5.5




第六章 图

6.1




6.3



相关推荐
fhvyxyci3 小时前
【数据结构初阶】排序算法(上)插入排序与选择排序
数据结构·算法·排序算法
cndes4 小时前
元组(tuple)和列表(list)的区别及应用场合
数据结构·python
勇敢滴勇5 小时前
【排序算法】选择排序、堆排序
数据结构·算法·排序算法
禁默5 小时前
C++之stack 和 queue
开发语言·数据结构·c++
啵一杯6 小时前
leetcode621. 任务调度器
服务器·前端·数据结构·算法·c#
Mr_Xuhhh7 小时前
vector
c语言·开发语言·数据结构·算法·链表·visualstudio
枫の准大一7 小时前
空间复杂度&动态顺序表
数据结构·算法
wht65878 小时前
C++--IO流
java·c语言·开发语言·数据结构·c++
暴怒香菜统治世界9 小时前
c语言--结构体
c语言·开发语言·数据结构·笔记·算法
大佬,咋整啊9 小时前
C语言0基础的前端考研日记:头插法/尾插法创建单链表
c语言·数据结构·考研