数据结构-二叉树

Posted potato-chip

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据结构-二叉树相关的知识,希望对你有一定的参考价值。

1、完全二叉树(complete binary tree)的定义

若设二叉树的深度为h,除第h层外,其他各层(1到h-1)的结点数都达到最大个数,第h层所有的结点都连续集中在最左边,这就是完全二叉树

2、满二叉树的定义(full binary tree)

满二叉树的节点要么是叶子节点,度为0,要么是度为2的节点,不存在度为1的节点

3、二叉树的基本性质

节点的度:节点的子节点的数量为该节点的度。在完全二叉树中,节点的度最多为2,最少为0

叶子节点:度为0的节点为叶子节点

4、树里面的基本概念

节点的高度:节点到叶子节点的最长路径(边数)

节点的深度:根节点到这个节点所经历的边的个数

节点的层数:节点的深度+1

树的高度:根节点的高度

这几个概念的区分:计算节点的高度时,起点从叶子节点为水平线,进行计算,叶子节点的高度为0;计算节点的深度时,起点从根节点为水平线,进行计算,根节点的深度为0;层数类似深度,起点从根节点为水平线,进行计算,根节点的层数为1

5、树的存储方式

两种方式:链式存储法,大部分的二叉树都是通过这个结构来实现和基于数组的顺序存储法,完全二叉树使用数组存储,比较省空间,存储的规律为:根节点存储下标为数组的索引1的位置,节点下标为i,其左子节点存储位置为2*i,右子节点存储位置为2*i+1;

以上是关于数据结构-二叉树的主要内容,如果未能解决你的问题,请参考以下文章

Java集合与数据结构 二叉树

Java集合与数据结构 二叉树

Java集合与数据结构 二叉树

数据结构《四》二叉树的实现

数据结构《四》二叉树的实现

数据结构-二叉树的创建?