区块链技术博客
www.b2bchain.cn

数据结构与算法-基础(六)二叉树基础求职学习资料

本文介绍了数据结构与算法-基础(六)二叉树基础求职学习资料,有助于帮助完成毕业设计以及求职,是一篇很好的资料。

对技术面试,学习经验等有一些体会,在此分享。

摘要

二叉树是树结构中最基础,也是最重要的结构。由二叉树衍生出多种不同类型的二叉树,当学习完二叉树的不同衍生结构后,会发现,都不能逃离二叉树的定义和特定

树结构

生活中会遇到很多树形结构的场景,比如公司的组织架构、文件目录等等。使用树形结构是出于可以提高效率的目的。

基本概念

树有节点、根节点、父节点、子节点、兄弟节点这几个关键词。树可以没有一个节点,称为空树,也可以只有一个节点,即只有根节点。树也可以分为子树、左子树、右子树

在树的结构中,有以下几个:

  • 节点的:子树的个数
  • 树的:所有节点度中的最大值
  • 叶子节点:度为 9 的节点
  • 非叶子节点:度不为 0 的节点
  • 层数:根节点在第 0 层,根节点的子节点在第 2 层,以此类推,直到最后
  • 节点的深度:从根节点到当前节点的唯一路径上的节点总数
  • 节点的高度:从当前节点到最远叶子节点的路径上的节点总数
  • 树的深度:所有节点深度中的最大值
  • 树的高度:所有节点高度中的最大值
  • 树的深度等于树的高度

树的类型

树分为有序树、无序树和森林有序树中任意节点的子节点之间有顺序关系,无序树中任意节点的子节点之间没有顺序关系,森林由多颗互不相交的树组成的集合。

二叉树(Binary Tree)

二叉树是每个节点的最大为 2(最多拥有 2 棵子树)的树,二叉树的左右子树有顺序。即使某一个节点只有一颗子树,也需要区分左右子树。

性质

二叉树总共有以下几个特点:

  • 非空二叉树的第 i 层,最多有 2^(i-1) 个节点(i >= 1)
  • 在高度为 h 的二叉树上最多有 2^h – 1 个节点(h >= 1)
  • 任何一棵非空二叉树,如果叶子节点个数为 n0,度为 2 的节点个数为 n2,则有:n0 = n2 + 1
    • 假设度为 1 的节点个数为 n1,那么二叉树的节点总数 n = n0 + n1 + n2
    • 二叉树的边数 T = n1 + 2 * n2 = n – 1 = n0 + n1 + n2 – 1
    • 由上推出:n0 = n2 + 1

二叉树的类型

  • 真二叉树:所有节点的要么为 0,要么为 2

摘要

二叉树是树结构中最基础,也是最重要的结构。由二叉树衍生出多种不同类型的二叉树,当学习完二叉树的不同衍生结构后,会发现,都不能逃离二叉树的定义和特定

树结构

生活中会遇到很多树形结构的场景,比如公司的组织架构、文件目录等等。使用树形结构是出于可以提高效率的目的。

基本概念

树有节点、根节点、父节点、子节点、兄弟节点这几个关键词。树可以没有一个节点,称为空树,也可以只有一个节点,即只有根节点。树也可以分为子树、左子树、右子树

在树的结构中,有以下几个:

  • 节点的:子树的个数
  • 树的:所有节点度中的最大值
  • 叶子节点:度为 9 的节点
  • 非叶子节点:度不为 0 的节点
  • 层数:根节点在第 0 层,根节点的子节点在第 2 层,以此类推,直到最后
  • 节点的深度:从根节点到当前节点的唯一路径上的节点总数
  • 节点的高度:从当前节点到最远叶子节点的路径上的节点总数
  • 树的深度:所有节点深度中的最大值
  • 树的高度:所有节点高度中的最大值
  • 树的深度等于树的高度

树的类型

树分为有序树、无序树和森林有序树中任意节点的子节点之间有顺序关系,无序树中任意节点的子节点之间没有顺序关系,森林由多颗互不相交的树组成的集合。

二叉树(Binary Tree)

二叉树是每个节点的最大为 2(最多拥有 2 棵子树)的树,二叉树的左右子树有顺序。即使某一个节点只有一颗子树,也需要区分左右子树。

性质

二叉树总共有以下几个特点:

  • 非空二叉树的第 i 层,最多有 2^(i-1) 个节点(i >= 1)
  • 在高度为 h 的二叉树上最多有 2^h – 1 个节点(h >= 1)
  • 任何一棵非空二叉树,如果叶子节点个数为 n0,度为 2 的节点个数为 n2,则有:n0 = n2 + 1
    • 假设度为 1 的节点个数为 n1,那么二叉树的节点总数 n = n0 + n1 + n2
    • 二叉树的边数 T = n1 + 2 * n2 = n – 1 = n0 + n1 + n2 – 1
    • 由上推出:n0 = n2 + 1

二叉树的类型

  • 真二叉树:所有节点的要么为 0,要么为 2

摘要

二叉树是树结构中最基础,也是最重要的结构。由二叉树衍生出多种不同类型的二叉树,当学习完二叉树的不同衍生结构后,会发现,都不能逃离二叉树的定义和特定

树结构

生活中会遇到很多树形结构的场景,比如公司的组织架构、文件目录等等。使用树形结构是出于可以提高效率的目的。

基本概念

树有节点、根节点、父节点、子节点、兄弟节点这几个关键词。树可以没有一个节点,称为空树,也可以只有一个节点,即只有根节点。树也可以分为子树、左子树、右子树

在树的结构中,有以下几个:

  • 节点的:子树的个数
  • 树的:所有节点度中的最大值
  • 叶子节点:度为 9 的节点
  • 非叶子节点:度不为 0 的节点
  • 层数:根节点在第 0 层,根节点的子节点在第 2 层,以此类推,直到最后
  • 节点的深度:从根节点到当前节点的唯一路径上的节点总数
  • 节点的高度:从当前节点到最远叶子节点的路径上的节点总数
  • 树的深度:所有节点深度中的最大值
  • 树的高度:所有节点高度中的最大值
  • 树的深度等于树的高度

树的类型

树分为有序树、无序树和森林有序树中任意节点的子节点之间有顺序关系,无序树中任意节点的子节点之间没有顺序关系,森林由多颗互不相交的树组成的集合。

二叉树(Binary Tree)

二叉树是每个节点的最大为 2(最多拥有 2 棵子树)的树,二叉树的左右子树有顺序。即使某一个节点只有一颗子树,也需要区分左右子树。

性质

二叉树总共有以下几个特点:

  • 非空二叉树的第 i 层,最多有 2^(i-1) 个节点(i >= 1)
  • 在高度为 h 的二叉树上最多有 2^h – 1 个节点(h >= 1)
  • 任何一棵非空二叉树,如果叶子节点个数为 n0,度为 2 的节点个数为 n2,则有:n0 = n2 + 1
    • 假设度为 1 的节点个数为 n1,那么二叉树的节点总数 n = n0 + n1 + n2
    • 二叉树的边数 T = n1 + 2 * n2 = n – 1 = n0 + n1 + n2 – 1
    • 由上推出:n0 = n2 + 1

二叉树的类型

  • 真二叉树:所有节点的要么为 0,要么为 2

部分转自互联网,侵权删除联系

赞(0) 打赏
部分文章转自网络,侵权联系删除b2bchain区块链学习技术社区 » 数据结构与算法-基础(六)二叉树基础求职学习资料
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

b2b链

联系我们联系我们