用小学生能听懂的话讲:二叉树、满二叉树、完全二叉树
先打个通俗比方:
把树倒过来看,最上面 1 个是根,往下分叉,每个分叉点叫节点,最下面没分叉的叫叶子。
一、什么是二叉树?
定义(人话版)
每一个节点,最多只能分 2 个叉:左孩子、右孩子。
可以不分叉、可以只分左边、可以只分右边、也可以左右都分。
规则
每个节点 0 个 / 1 个 / 2 个 孩子 都可以。
简单例子
plaintext
A/BA 只有左孩子 B,没有右孩子 → 这也是二叉树。
plaintext
1
/
2 31 有左右两个孩子 → 也是二叉树。
只要不超过 2 个分叉,都是二叉树。
二、什么是满二叉树(完美满二叉树)
定义(人话版)
从最顶上到最底下,每一层都长满了,每个节点都刚好有 2 个孩子,没有空缺、没有少分叉。
整棵树长得整整齐齐、满满当当。
规则
- 每一个节点必须都有左右 2 个孩子
- 所有叶子都在同一最底层
例子
plaintext
1
/
2 3
/ \ /
4 5 6 7
- 1 有 2 个孩子
- 2、3 也各有 2 个孩子
- 最下面一层全部长满,没有空位置→ 这就是满二叉树。
- 只要有任何一个节点少了一个分叉,就不是满二叉树。
三、什么是完全二叉树
定义(人话版)
一层一层从左往右挨个排,中间不能留空位置,只能最后一层最右边可以缺几个叶子。
规则
- 前面每一层全部长满
- 最后一层的节点靠左边排,右边可以空,不能中间空、左边空
✅ 是完全二叉树的例子
plaintext
1
/
2 3
/
4 5
- 第一层、第二层都长满了
- 第三层只排了左边 4、5,右边空着,中间没留空位→ 是完全二叉树。
❌ 不是完全二叉树的反例
plaintext
1
/
2 3
5
2 的左边空着,直接有右孩子 5,中间有空位 → 不是完全二叉树。

一句话总结区别
- 二叉树:每个点最多分 2 叉,随便长。
- 满二叉树:每一层全长满,每个点都刚好 2 个分叉,最整齐。
- 完全二叉树:按从左到右排队,前面几层长满,最后一层只能右边空、不能中间空。
- 我可以给你画简易卡通版树形结构图,适合直接拿去给小学生上课用,要不要我帮你画?
