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

二叉树的存储结构

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

顺序结构

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

如图所示:

链式结构

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

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

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

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

如图所示:

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

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

谢谢!!!

相关推荐
.徐十三.17 分钟前
一篇文章看到最短路径——Dijkstra算法
算法
十月的皮皮22 分钟前
stm20260720-从新手 C 到量产 STM32 工程:程序设计推导指南
c语言·开发语言·stm32·stm32cubemx·hal库
Echo缘1 小时前
嵌入式系统C语言资源分类与内存分布分析
c语言·开发语言
胖大和尚1 小时前
C++ 多线程编程的实现方式
c++·thread
科学实验家2 小时前
二叉树的几道题
算法
abcy0712132 小时前
flink state实例
大数据·算法·flink
qizayaoshuap2 小时前
# [特殊字符] 密码生成器 — 鸿蒙ArkTS安全算法与密码强度评估系统
java·算法·安全·华为·harmonyos
在水一缸2 小时前
深入浅出 Catch2:现代 C++ 测试框架的优雅实践
开发语言·c++·单元测试·log4j·测试框架·catch2
良木林2 小时前
滑动窗口 - LeetCode hot 100
javascript·算法·leetcode·双指针·滑动窗口
华玥作者2 小时前
uniapp 万条数据不卡顿:我写了个虚拟列表组件 hy-list,原生支持瀑布流
数据结构·uni-app·list·vue3