
一起动脑筋 · 先看一个小故事
女孩画出“书包—文具袋—铅笔”的层级。机器人把每个物品画成点,把包含关系画成线。
把过程摊开来看
- 根书包
- 下一层文具袋与书本
- 再下一层铅笔与橡皮
树适合表达层级关系。
在有根树中,根没有父节点,其余节点各有一个父节点。向下可分出多个孩子,不能沿树边绕一圈回到原点。
01为什么叫“树”?
计算机里的树通常把根放在上面、叶子放在下面,看起来像一棵倒过来的树。
02树由什么组成?
A
BC
DEF
每个圆点或位置可以看成一个节点,节点之间用边连接。
03什么是根、父节点、子节点?
根节点
树最上层的起点。
父节点
直接连接到下一层节点的节点。
子节点
某节点直接向下连接的节点。
叶节点
没有子节点的节点。
04树为什么没有“绕一圈回来”?
树是一种特殊的无环连接结构。
如果从一个节点沿着边不断走,出现一条闭合环路,那就不再是树。
05树里两个节点之间有几条简单路径?
在一棵连通的树中,任意两个节点之间只有唯一一条简单路径。
这是树非常重要的性质。
06现实里哪些结构像树?
- 文件夹目录
- 公司组织结构
- 家谱的某些表示
- HTML DOM 的层级
- 比赛淘汰结构的某些形式
07树一定要用指针实现吗?
不一定。
树可以用节点指针、数组、邻接表等多种方式表示。
你已经知道了什么
- 树是一种层级、无环的连接结构。
- 树由节点和边组成。
- 根、父节点、子节点、叶节点是基本概念。
- 树中任意两节点之间有唯一简单路径。
- 树可以有多种程序实现方式。
下一篇:二叉树是什么?
轮到你来试一试
若两个分支又连成一个环,还是这里所说的树吗?
想好了吗?点开看解释
不是。树不含环;一般无向树还必须连通。