《考研408数据结构》第六章(5.1+5.2+5.3树、二叉树、线索二叉树)复习笔记

一、树

1、树的定义

计算机专业的应该都学过,只需要略微回顾一下这些名词就行;跨考的看一下这个思维导图应该也能理解

2、其他基本术语

放大来看,过一遍就行,都是很基础的概念

3、树的常考性质计算

虽然我的图画的很丑。。。但是我觉得这些性质不需要花太多图和文笔来解释,就这么几个公式概念之间用一个图集合起来,应该都看得懂吧。。。?

;

;

【重点注意!!】

1、已知度为m、节点共n个,【最小高度h】一定一定要取到【超出的第1个结果】,或者按照下面这个公式理解,我也不知道怎么解释反正记住就行

;

2、已知各个度数节点有几个,求总结点数的【2种平替计算公式】!!!!

4、【总结】

5、【例题】

二、二叉树

1、二叉树的定义

就是每个节点最多有【2棵子树】的树,或者说最多有【2个分支】

  • 当然是【最多】,没说【一定】,【啥节点也没有的空树】也是一种【子树】
  • 依旧是狗屎图,需要各位放大,不过也没什么知识点,只是要注意区分一下【二叉树】和【度为2的树】二者的区别

2、特殊二叉树

这个思维导图我就不乱画了,先仔细回忆一下

1)【满二叉树】和【完全二叉树】

【满二叉树】一定是【完全二叉树】,但是**【完全二叉树】不一定是【满二叉树】**

2)二叉排序树

3)平衡二叉树

3、二叉树的性质

;

;

我懒得打字解释了,全部都可以按前面【树的性质】推算,只要牢记【二叉树的度<=2】就行了(一般按度数m=2计算就可以了)

;

【留意一下:完全二叉树】

【例题】

4、二叉树的存储结构(感觉出的题很少,应该非重点)

1)第一种:顺序存储

2)第二种:链式存储

;

【注意考点!!】

  • 【二叉树二指针】情况的【指针数】
  • 【二叉树三指针】情况的【指针数】

【例题】

5、二叉树的遍历(常考)

【三大类遍历的总结】

1)先序遍历【根左右】

2)中序遍历【左根右】

3)后序遍历【左右根】

4)层次遍历

5)由遍历序列构造二叉树

【先序 + 后序】
【后序+中序】

;

【层序+中序】

;

;

【一些技巧知识点】
  • 【先序遍历】和【后序遍历】完全不一样:该树的节点只有1左孩子、或只有1右孩子
  • 【中序遍历】对于"节点只有1左孩子、或只有1右孩子"的树,【子树根】只会在序列最前、或最后
  • 【只有前序、后序】时,并非什么也推不出
    • 可以推出【根节点】、以及【紧挨根节点的左、右孩子】
  • 【任何遍历方式】输出了【N个元素的序列】,都对应有【】种二叉树形状
    • 也可以用**【卡特兰数】来计算【n个节点的二叉树形状】**
  • 什么情况【先序=中序】、【后序=中序】

【例题】

三、线索二叉树

【总结思维导图】

【具体解释】

1)中序线索二叉树

2)先序 和 后序线索二叉树

【先序遍历线索二叉树】

【后续遍历线索二叉树】

【例题】

相关推荐
2603_9696948512 分钟前
【JavaWeb学习记录】MyBatis核心知识点与实战笔记:从入门到动态SQL
笔记·sql·学习·mysql·mybatis·javaweb·学习方法
Pniubi15 分钟前
关于算法用现成数据结构和手撕
数据结构
可乐ea25 分钟前
智能体记忆该拆成几层:笔记、记忆表示与注入上下文
服务器·数据库·笔记·ai智能体·提示词工程·上下文工程·记忆系统
Go Work4 小时前
两个等值条件摆着,MySQL 偏要全表扫
经验分享·笔记
猫猫不是喵喵.4 小时前
从0到1创建一个微服务项目
java·数据库·微服务·1024程序员节
Oll Correct4 小时前
Adobe illustrator 案例十四:花元素标志草图绘制
笔记·ui·adobe·illustrator
每月一号准时摆烂9 小时前
服务器运维笔记(一)——使用shell编写实时查看BMC功率的脚本
运维·服务器·笔记
老师我太想进步了202611 小时前
【数据结构-6】算法美学之单链表(1)
数据结构·算法
希望我万事顺遂12 小时前
力扣hot100-滑动窗口最大值
数据结构·算法·leetcode
꧁细听勿语情꧂12 小时前
二叉树余题,排序、直接插入排序、希尔排序
c语言·开发语言·数据结构·算法