挑战30天C++基本入门(DAY6--树)[part 1](速通哦~)

#嘿嘿,这么长时间没有更新了,也怪不好意思嘞,主要是后面的数据结构自成体系,如果没能复习明白,我也怕给大家带来错误的思维。于是沉淀了下来,静静的从底层开始复习了2周左右,这才梳理明白,可以给大家写出之后关于数据结构的文章。

还有12天左右俺就要转专业了,现在也挺焦虑,害怕转不成就寄了0.0,刚好写文章对自己也起到一个复习的作用!(大家一起加油!)

#take it easy,看我这个系列肯定能帮助大家清楚明白地了解数据结构里面的知识,我们先从“树”,这个重要的数据结构开始学习啦!

树的基本概念

我们先了解一些基本概念:

结点的度:结点拥有的子树的数目
叶子:度为零的结点。
分支结点:度不为零的结点
树的度:树中结点的最大的度

层次:根结点的层次为1,其余结点的层次等于该结点的双亲结点的层次加1
树的高度:树中结点的最大层次.
无序树:如果树中结点的各子树之间的次序是不重要的,可以交换位置
有序树:如果树中结点的各子树之间的次序是重要的,不可以交换位置.

一些基本的概念就在上面,都是一些概念,了解即可,在后面多打几次代码模板就基本上不会忘了,也都会全部记住啦!

树的基本性质

上面的性质其实很好了解,我们随便画个图就可以得到类似的结论,也是了解即可。

满二叉树

我们要了解不同树的类型,我们这里先拿满二叉树来说,什么是满二叉树呢?

根据它的名字我们很好理解,满二叉树就是每一个根节点都有两个子节点,即都是满的情况下,我们称之为满二叉树,用数学语言表示,就是下面的图这个样子:

前中后序遍历

这个知识点极其重要,一般面试或者题目也是经常会出的一个类型。

我们了解一下什么是前中后序遍历。

首先我们先看遍历:就是我们把一个树可以存储以及表达出来的形式。

我们的树只有父节点和子节点,我们肯定要按一定的顺序给她表示,因为我们有了前中后序遍历。

概念如下:

我们如果硬记忆的话,很容易记错。

我们可以这样来记忆:

前中后对应的是我们根节点的位置,比如前序遍历:我们就是把根节点放在最前面,即根左右,之后的类似,这样还是比较好记忆的!

二叉查找树

这个树的类型也是比较好记忆的,因为含有查找两个字,所以我们可以这样记忆:他的类型是长这个样子,左子树小于根节点小于右子树,这样虽然还是树,但是还是有一定的结构,便于我们的查找。如下图:

完全二叉树

定义:前面n-1层是满的结构,最后的第n层要靠左排。

因此满二叉树一定是完全二叉树,但是完全二叉树并不一定是满二叉树!!

//以上就是树的基础概念和定义,在树这一章节我会分为几个小部分来论述,因为树的知识还是比较多的,同时也比较重要,所以我们一定要慢慢来,然后把基础打牢,这一章节我们主要是学了基础定义,下一章节,我就要进行代码部分的讲解啦。

希望大家多多支持哦!!!!下部分的手搓代码我一定让大家即使零基础也能学明白嘞!!

(关注点赞走起铁铁们~~)

  • 9
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值