java实现简单的二叉树 什么是二叉树的顺序存储?
浏览量:1194
时间:2021-03-29 02:16:18
作者:admin
什么是二叉树的顺序存储?
这种结构将二叉树的所有节点按一定顺序存储在一个连续的存储单元中。因此,必须将节点排列成适当的线性序列,使节点在序列中的对应位置能够反映节点之间的逻辑关系。这种结构特别适用于几乎完全的二叉树。在一个具有n个节点的近似完全二叉树中,通过对所有节点从根开始、从上层到下层、从左到右逐层编号,可以得到一个反映整个二叉树结构的线性序列。存储结构值为:假设节点在数组中的位置为I,则其左子位置为2I,右子位置为2i1。(I从1开始)。所以您只需要创建一个数组,从链式存储的根节点开始,按中间顺序遍历树,然后按中间顺序存储在数组中。这样就可以改变顺序存储结构。你可以查看相关的遍历信息,按遍历的顺序即访问的顺序是左子根右子。希望能对你有所帮助。
怎么将二叉树顺序存储结构图转化为二叉树结构呢?
最坏的情况是二叉树是单个分支。例如,如果有一个k层,它的节点号也是k,所以它需要一个长度为2^k-1的数组来存储,实际上它有k个节点。为什么?因为二叉树的顺序存储是相对于完全二叉树的。对于一般的二叉树,如果相对于该二叉树没有这样的节点,则应该在数组中相应的位置存储一个ID来指示没有这样的节点。
java实现简单的二叉树 二叉树的存储结构有哪些 二叉树查找算法java
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。
下一篇
网站开发个人感想 网站开发