美文网首页
树和二叉树

树和二叉树

作者: HelenYin | 来源:发表于2019-04-08 23:09 被阅读0次

树的定义和基本术语

  • 节点: 包含一个数据元素和若干指向其子树的分支
  • 度: 节点拥有的子树数称为节点的度
  • 叶子: 度为0的节点称为叶子或中断节点
  • 非终端节点,分支节点:度不为0的节点
    下面几个概念不做解释了: Child, Parent, Sibling, 祖先, 子孙堂兄弟
  • 层次:从根开始,根为第一层,根的孩子是第二层。。。。
  • 深度:树中最大的层次称为深度或者高度
  • 有序树:从左至右是有顺序的就称为有序树(第一个孩子,最后一个孩子)
  • 无序树:否则就是无序树
  • 森林:子树的集合称为森林

二叉树

二叉树是一种树形结构,它的特点是每个节点之多只有两棵子树,并且二叉树的子树有左右之分,其次不能任意颠倒。

遍历二叉树

二叉树是由3个基本单元组成:根节点,左子树,右子树。因此如果能遍历这三个部分就遍历了整棵树。

  • 先序遍历
  1. 访问根节点
  2. 先序遍历左子树
  3. 先序遍历右子树
  • 中序遍历
  1. 中序遍历左子树
  2. 访问根节点
  3. 中序遍历右子树
  • 后序遍历
  1. 后序遍历左子树
  2. 后序遍历右子树
  3. 访问根节点

例子:



我画了一个树

先序遍历的结果:
-+ab-cd/ef
中序遍历的结果:
a+b
c-d-e/f
后序遍历的结果:
abcd-*+ef/-

相关文章

  • Java_二叉树概念及基本操作

    树、森林和二叉树的转换 树转换为二叉树 森林转换为树 二叉树转换为树 二叉树转换为森林 代码

  • 数据结构和算法--二叉树的实现

    数据结构和算法--二叉树的实现 几种二叉树 1、二叉树 和普通的树相比,二叉树有如下特点: 每个结点最多只有两棵子...

  • 二叉树

    1,二叉树的定义二叉树的结构:二叉树由根节点和左右子树组成,二叉树的左子树和右子树分别为二叉树。这种结构使得有关二...

  • 二叉树数据结构及其算法操作(Java)

    二叉树的定义 向二叉树中插入节点 搜索二叉树中最大值和最小值 搜索二叉树的深度(height)和节点数(size)...

  • 二叉树几种操作(递归实现)

    前序、中序、后序遍历二叉树 二叉树所有节点的最大值 二叉树的高 二叉树所有节点和

  • 61_二叉树的存储结构设计

    关键词:二叉树的存储结构设计 0. 课程目标 完成二叉树和二叉树结点的存储结构设计二叉树和二叉树结点的继承关系图 ...

  • 二叉树理论介绍

    二叉树的种类 满二叉树 完全二叉树 满二叉树 满二叉树:如果一棵二叉树只有度为0的结点和度为2的结点,并且度为0的...

  • 三个树构造算法

    已知先序和后序构造正则二叉树 已知先序和中序构造二叉树 已知中序和后序构造二叉树

  • 关于函数递归和迭代的转化, 及尾递归相关知识的接触和思考

    javascript实现数据结构: 树和二叉树,二叉树的遍历和基本操作 js 二叉树 【数据结构与算法】深入浅出递...

  • 2018-03-28 二叉树的转换

    二叉树,树,森林 二叉树转树 和 二叉树转森林的区别在于,最终根节点有没有右子树。如果有右子树,则这颗二叉树转换之...

网友评论

      本文标题:树和二叉树

      本文链接:https://www.haomeiwen.com/subject/sklpiqtx.html