数据结构-二叉树

树(Tree)是一种非常重要的数据结构,它模拟了一种层级或者分支结构。在树结构中,数据以节点(Node)的形式存储,并且每个节点都可以有零个或多个子节点。
以下是树结构的基本概念:

  • 节点的度(Degree):节点的子树个数
  • 树的度:树的所有节点中最大的度数
  • 叶子节点(Leaf):度为0的节点
  • 子节点(Child):一个节点下面的节点。
  • 父节点(Parent):有子节点的节点。
  • 兄弟节点(Sibling):共享同一父节点的节点。
  • 深度(Depth):树中节点的最大层数。
  • 高度(Height):节点的高度,叶节点的高度为1,其余节点的高度是其所有子节点高度的最大值加1。
  • 路径(Path):从一个节点到另一个节点的序列

二叉树
如果树中每个节点最多只能有两个子节点,这样的树就称之为二叉树

二叉树的重要特性

  • 一个二叉树第i层的最大节点数为:2^(i-1),i>=1
  • 深度为k的二叉树有最大节点总数为:2^k-1,k>=1
  • 对任何非空的二叉树T,若n0表示叶子节点的个数,n2是度为2的非叶子节点个数,那么两者满足关系n0 = n2 + 1

完美二叉树
除了最下一层的叶子节点外,每层节点都有两个子节点,就构成了满二叉树

完全二叉树
除了二叉树最后一层,其他各层的节点数都达到最大个数,且最后一层从左向右的叶节点连续存在,只缺右侧若干节点。完美二叉树是特殊的完全二叉树

相关推荐

  1. 数据结构-

    2024-06-13 08:32:05       41 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-06-13 08:32:05       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-06-13 08:32:05       100 阅读
  3. 在Django里面运行非项目文件

    2024-06-13 08:32:05       82 阅读
  4. Python语言-面向对象

    2024-06-13 08:32:05       91 阅读

热门阅读

  1. C++ 线程的使用以及线程安全--学习笔记1

    2024-06-13 08:32:05       29 阅读
  2. 深入理解JVM类加载器与双亲委派模型机制

    2024-06-13 08:32:05       28 阅读
  3. Apache 网站服务基础

    2024-06-13 08:32:05       16 阅读
  4. Ubuntu根分区在线扩容

    2024-06-13 08:32:05       24 阅读
  5. 小程序中的模版语法

    2024-06-13 08:32:05       19 阅读
  6. [Linux] Screen的简单使用与中途退出保持运行

    2024-06-13 08:32:05       33 阅读
  7. 四、Nginx配置文件-负载均衡

    2024-06-13 08:32:05       32 阅读