数据结构——树

本文详细介绍了树这一数据结构的基本概念,包括根、子树、叶子节点等,并阐述了树的度、深度等特性。此外,还深入探讨了二叉树的特点,即每个节点最多有两个孩子节点,分别是左孩子和右孩子。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

树是一种很常用的数据结构,一般用来表示具有层次结构的数据。

本篇博客中主要包含三个方面:1.树的定义和基本概念   2.二叉树

一、树的定义和基本概念

1)树是n(n>=0)个结点的有限集合。当n=0时是一棵空树,当n>0时,至少含有一个结点。

2)根(Root):有且仅有一个结点(n=1)时,那个结点就是根节点

3)子树(Subtree):当n>1时,除了根节点以外的其余结点可以分为m个互不相交的集合,每个集合又可以构成一棵树,成为根的子树

4)叶子结点(leaf):没有子结点的结点

5)父结点(parent)和子结点(child):若结点x有一个以结点y为树根的子树,则x为y的父结点,y为x的孩子

6)兄弟结点(sibling):若z和y有同一个父亲,则z和y互为兄弟。

7)结点的度(degree):结点子树的个数

8)树的度:一棵树中最大的结点的度数

9)结点的层次(level):将根结点的层次设为1,其子结点的层次为2,以此类推

10)树的深度(depth):叶子结点的最大层次

11)祖先(ancestor):由某结点x到根节点的路径上的所有结点,均称为x的祖先。

举个例子:

这棵树共有13个结点(n=13),根节点为A,{B,E,F,K,L}、{C,G}、{D,H,I,J,M}是A的三棵子树,K,L,M是三个叶子节点,他们没有子树了。

B是A的子结点,是E,F的父结点,和C,D是兄弟。

B的度是2,D的度是3,结点的度最大是3(D的度),故树的度是3.

A的层次是1,B,C,D的层次是2,E,F,G,H,I,J的层次是3,K,L,M的层次是4,叶子节点(K,L,M)的最大层次是4,故树的深度是4.

M的祖先是H,D,A。


二、二叉树(Binary Tree)

首先,二叉树也是树,树的概念他都有的,只是比较特别。特别之处就在于:每个节点至多只有两个孩子,分为左孩子和右孩子。也就是说每个节点的度至多为2.



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值