什么是二叉树?

简介: 简单理解二叉树。

我们以BFS顺序表示二叉树。

例如:

image.png
BFS 顺序或上面的二叉树为[1,2,3],因此该树将被序列化为{1,2,3}

对于:

image.png

两棵树的 BFS 顺序相同都为:[1,2]。为了区分它们,我们使用{1,2,#}代表第一个,{1,#,2}代表第二个。 #代表空节点。对于{1,2,#},我们可以通过忽略{1,2}尾部的空节点来使其更短。

让我们来看一个更大的二叉树:

image.png

它将被序列化为{1,2,3,4,5,#,6,#,#,7,8}

1:根
2:1的左子树
3:1的右子树
4:2的左子树
5:2的右子树
#:3的左子树
6:3的右子树
#:4的左子树
#:4的右子树
7:5的左子树
8:5的右子树
因为6、7、8位于bfs顺序的末尾,它们的左子树和右子树都为空,所以可以忽略。

相关文章
|
7月前
|
算法 前端开发
2583. 二叉树中的第 K 大层和
2583. 二叉树中的第 K 大层和
57 0
|
机器学习/深度学习 存储 算法
深入理解【二叉树】
深入理解【二叉树】
89 0
|
7月前
|
存储
|
6月前
|
Java
二叉树
二叉树
26 0
二叉树的讲解
1.若规定根节点的层数为1,则一棵非空二叉树的第i层上最多有2^(i-1) 个结点. 2. 若规定根节点的层数为1,则深度为h的二叉树的最大结点数是 2^h-1. 3. 对任何一棵二叉树, 如果度为0其叶结点个数为n0 , 度为2的分支结点个数为02 ,则有n0 =n2 +1 4. 若规定根节点的层数为1,具有n个结点的满二叉树的深度,h= . (ps: 是log以2为底,n+1为对数) 5. 对于具有n个结点的完全二叉树,如果按照从上至下从左至右的数组顺序对所有节点从0开始编号,则对于序号为i的结点有:
二叉树的讲解
二叉树(详解)下
二叉树(详解)
62 0
|
7月前
|
存储 数据库管理
【二叉树】
【二叉树】
53 0
|
存储
浅谈二叉树
浅谈二叉树
55 1
|
7月前
|
存储 Java C++
二叉树的实现(上)
二叉树的实现
70 0