go数据结构(二叉树的概念)

二叉树是一种数据结构,其中每个节点包含节点值、左子节点和右子节点。根节点是无父节点的顶点,叶子节点没有子节点。节点的度表示其子节点数量,深度是从根到节点的路径长度,而高度是从节点到最远叶子节点的路径。线性表可视为特殊的一维二叉树。
摘要由CSDN通过智能技术生成

树的相关概念:

节点

二叉树中的节点包含三个基本信息,即节点值、左子节点和右子节点。其中节点值可以是任意类型的数据,左子节点和右子节点是指向左子树和右子树的指针(若为空则指向空值null)。

根节点

根节点是二叉树中的顶点,它是唯一一个没有父节点的节点。

叶子节点

没有子节点的节点称为叶子节点。

子节点

一个节点的左右被分别称作它的左子节点和右子节点。

父节点

一个节点的父节点是它的直接上级节点。

其中的每个元素叫做节点。树的顶点(没有父元素的节点)叫根节点,如 E;

每个分支的末端节点(没有子元素的节点)叫叶子节点,如 G、H、I、J、K、L;

用来连接相邻节点之间的关系叫父子关系,比如 E 是 A、F 的父节点,A、F 是 E 的子节点;

具有同一个父节点的多个子节点叫做兄弟节点,比如 A、F 是兄弟节点。

节点拥有的子节点数目叫做节点的度,显然,叶子节点的度为 0,树的度是树内各节点度的最大值。

树还有高度、深度和层的概念:

深度和高度:

  • 深度:二叉树的深度是指根节点到该节点的路径长度,根节点的深度为0。
  • 高度:二叉树的高度是指从该节点到最远的叶子节点的路径长度,叶子节点的高度为0。

注:其实线性表也可以看作一种特殊的树,只不过所有节点都在一个分支上,第一个元素是根节点,最后一个元素是子节点,没有兄弟节点。层数就是线性表的长度

参考:Go 数据结构和算法篇(十五):二叉树的定义和存储 - 极客书房

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值