数据结构错题答案汇总

王道学习

第一章 绪论

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



相关推荐
TL滕21 分钟前
从0开始学算法——第二天(时间、空间复杂度)
数据结构·笔记·学习·算法
旺仔老馒头.2 小时前
【数据结构与算法】手撕排序算法(二)
c语言·数据结构·算法·排序算法
努力努力再努力wz3 小时前
【Linux进阶系列】:线程(上)
java·linux·运维·服务器·数据结构·c++·redis
czhc11400756633 小时前
Java117 最长公共前缀
java·数据结构·算法
吃着火锅x唱着歌3 小时前
LeetCode 2016.增量元素之间的最大差值
数据结构·算法·leetcode
西岭千秋雪_5 小时前
Zookeeper数据结构
java·数据结构·分布式·zookeeper
qk学算法6 小时前
力扣滑动窗口题目-76最小覆盖子串&&1234替换子串得到平衡字符串
数据结构·算法·leetcode
还是码字踏实6 小时前
基础数据结构之数组的矩阵遍历:螺旋矩阵(LeetCode 54 中等题)
数据结构·leetcode·矩阵·螺旋矩阵
TitosZhang7 小时前
排序算法稳定性判断
数据结构·算法·排序算法
周杰伦_Jay9 小时前
【Python后端API开发对比】FastAPI、主流框架Flask、Django REST Framework(DRF)及高性能框架Tornado
数据结构·人工智能·python·django·flask·fastapi·tornado