看了这篇对二叉树的介绍,除了不会写代码啥都会!!!
Posted Java笔记虾
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了看了这篇对二叉树的介绍,除了不会写代码啥都会!!!相关的知识,希望对你有一定的参考价值。
作者 | ithuangqing
来源 | 编码之外(ID:ithuangqing)
数据结构系列的文章我们之前已经说过数组,链表,哈希表以及队列等等,上一篇也简单的介绍下了树的概念,从今天开始,我们就进入二叉树的学习,这可是面试官最喜欢的问题之一,务必掌握牢固哦!
回顾树的那些事
在介绍二叉树之前,我们有必要再来看看关于树的一些关键性概念,毕竟,二叉树也是树嘛。
我们首先应该了解的就是树这种数据结构属于非线性结构,然后存储的数据具有一对多的关系,这是最最基本的概念了。
几个概念名词要分清
然后我们需要清楚关于树的一个关键性的概念名词。
节点:什么是节点呢?这个节点也有叫做结点,这两个应该没有区别吧,我看过不少文章,有的叫做节点,有的叫做结点,我觉得节点更加合适,因为我们喜欢使用Node来定义一个节点,Node一般翻译过来就是节点二字。
那啥是节点:
简单来说,树结构存储的每一个元素都叫做一个节点
也就是在树这种结构中存储的元素都叫做节点,然后根据有些节点的特殊位置可能会有不同的叫法。
比如根节点,根节点只有一个,最上面的那个节点,还有父节点,子节点和兄弟节点,这些其实都不难理解,属于树的基础知识,不了解的可以看这篇文章,有详细的介绍:来吧!一文彻底搞定数据结构之树!
除了节点,还有子树和空树的概念,以及节点的度和层次,树的高度或者说是深度,这些都可以在上面提到的这篇文章中找到,这里简单说下节点的度和层次,先看一个图:
度:对于一个节点而言,拥有的子树数称为节点的度(Degree)。比如,图中根节点 A 下分出了 3 个子树(BCD),所以,结点 A 的度为 3。
树的度:一棵树的度是树内各节点的度的最大值。图 中,各个节点的度的最大值为 3,所以,整棵树的度的值是 3。
另外再提下树的高度或者深度:
一棵树的深度(高度)是树中节点所在的最大的层次。注意这里说的是一个树的,而不是某个节点的,因为对于一个树而言,高度从下往上和深度从上往下都是一样的,但是对于某个节点而言高度和深度就不一样了
tips:关于这些基本概念,最好就是自己完全理解,知道是怎么一回事,而不是机械的去记忆,不然即使当时记住了,要不几天也就忘得差不多了
英文名字Binary Tree
对了,一定要记住二叉树的英文是Binary Tree
以上是关于看了这篇对二叉树的介绍,除了不会写代码啥都会!!!的主要内容,如果未能解决你的问题,请参考以下文章