数据结构:二叉树(三)·(重点)

二叉树的存储结构

⼆叉树⼀般可以使⽤两种结构存储,⼀种顺序结构,⼀种链式结构。

顺序结构

顺序结构存储就是使⽤数组来存储,⼀般使⽤数组只适合表⽰完全⼆叉树,因为不是完全⼆叉树会有 空间的浪费,完全⼆叉树更适合使⽤顺序结构存储。

如图所示:

链式结构

⼆叉树的链式存储结构 是指,⽤链表来表⽰⼀棵⼆叉树,即⽤链来指⽰元素的逻辑关系。

通常的⽅法 是链表中每个结点由三个域组成,数据域左右指针域,左右指针分别⽤来给出该结点左孩⼦和右孩 ⼦所在的链结点的存储地址。

链式结构 ⼜分为**⼆叉链** 和三叉链,当前我们学习中⼀般都是⼆叉链。

后⾯学到**⾼阶数据结构** 如红⿊树等会⽤到三叉链。

如图所示:

关于二叉树的基础部分就给大家讲完了,后面将会给大家深度讲解如何来实现二叉树的顺序结构。

最后,给可爱的芙芙点个赞八。

谢谢!!!

相关推荐
蜕变的土豆21 小时前
Visual Studio编译时,报错windows sdk 不匹配,找不到windows sdk
c++
雪度娃娃1 天前
转向现代C++——优先选用限定作用域的枚举型别,而非不限作用域的枚举型别
java·jvm·c++
咩咦1 天前
C++学习笔记17:析构函数
c++·学习笔记·类和对象·构造函数·析构函数·动态内存
爱炸薯条的小朋友1 天前
全局锁的性能优势,以及链路优化为何常常低于预期——基于 `MatPoolsTest` 中小图池与大图池的实战复盘
opencv·算法·c#
NCU_wander1 天前
全品类存储芯片汇总/DRAM/flash/HBM
算法
Plan-C-1 天前
二叉树的遍历
java·数据结构·算法
历程里程碑1 天前
54 深入解析poll多路复用技术
java·linux·服务器·开发语言·前端·数据结构·c++
靠沿1 天前
【动态规划算法】专题二——路径问题
算法·动态规划
手写码匠1 天前
手写 AI 推理加速引擎:从零实现 KV Cache 与 Speculative Decoding
人工智能·深度学习·算法·aigc
无限进步_1 天前
【C++】可变参数模板与emplace系列
java·c++·算法