• 1、树的定义

    N个结点的有限集合,N=0时,称为空树。

    2、树满足以下条件:

    • 有且仅有一个特定的称为根的结点。
    • 当N>1 时,其余结点可分为m(m>0)个互不相交的有限集合T1,T2,T3......Tm,其中每一个集合本身又是一棵树,并且称为根节点的子树。

    3、基本术语

    结合上图解释基本术语

    1> 以结点K为例,根A到结点K唯一路径上的任意结点,称为结点K的祖先结点,图中结点B为结点K的祖先结点,而结点K为结点B的子孙结点
    2>路径上最接近结点K的结点E称为K的双亲结点,而K为结点E的孩子结点。具有相同双亲的为兄弟结点
    3>树中一个节点的子结点个数称为该结点的度,树中结点最大的度数称为树的度
    4>度数大于0的结点称为分支结点;度数为0(没有子女的结点)的结点称为叶子节点(又称终端结点)。
    5>树的深度、高度和层次
    结点的层次从树根开始定义,根节点为第一层,子节点为第二层,以此类推。
    结点的深度从根节点开始自上而下逐层累加。
    结点的高度从叶节点开始自底向上逐层累加。
    树的高度 树中结点的最大层数。

    二叉树

    1、定义:另一种树形结构,需保证每个二叉树的结点最多包含两个子树,并且二叉树包含左右之分。与度为2 的树不同的是二叉树可以为空,但是度为二的树至少有3个结点。

    2、二叉树的几种特殊类型:

    满二叉树:顾名思义树中每层都含有最多的结点。当有一颗高度为h的树,满二叉树包含的结点为2的h次方-1。
    完全二叉树
    平衡二叉树:树上任一结点的左子树和右子树的深度之差不超过1。

    3、二叉树的存储

    1>二叉树的链式存储:用一组连续的地址空间依次自上而下,自左而右的存储二叉树上的结点元素。存储效率较低。
    2>二叉树的链式存储:用一个链表来存储一颗二叉树,二叉树中每个结点用链表中一个链结点来存储。二叉树中结点结构至少还包含3个域:数据域、左指针域、右指针域。

  • 相关阅读:
    124. 二叉树中的最大路径和
    快速排序,归并排序
    剑指offer ——重建二叉树
    共享指针的简单实现
    string_自定义
    幸运的袋子
    动态规划——出差问题
    计算数组平均值
    时间格式化并算差值
    适配器模式
  • 原文地址:https://www.cnblogs.com/gloria-liu/p/10252181.html
Copyright © 2020-2023  润新知