Java教程

二叉树的存储结构(理论)

本文主要是介绍二叉树的存储结构(理论),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

1.二叉树的顺序存储:

(1)基本数据类型定义及初始化:
在这里插入图片描述

(2)顺序存储下的基本操作:
在这里插入图片描述
如果这棵树是完全二叉树的话:
在这里插入图片描述

(3)非完全二叉树的二叉树怎么顺序存储:
在这里插入图片描述
但是如果你想知道某个节点有没有左孩子或右孩子,用完全二叉树那一套就不行了,就只能用基本数据类型定义里的成员变量isEmpty来判断了。

缺点:使用顺序存储来存储二叉树会导致空间的很大浪费,下面这种尤其如此:(所以这种存储结构很少用)
在这里插入图片描述

2.二叉树的链式存储:

(1)基本数据类型定义及图示:
在这里插入图片描述
在这里插入图片描述

(2)链式二叉树的构建:
在这里插入图片描述
如果经常需要找父节点的话,建议这样定义基本数据类型:
在这里插入图片描述

结论:二叉树的顺序存储结构只适合完全二叉树

这篇关于二叉树的存储结构(理论)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!