数据结构——二叉树基础

文章目录

    • 1 前言
    • 2 概念
      • 2.1 节点
      • 2.2 树节点
    • 3 树
      • 3.1 定义
      • 3.2 节点的度
      • 3.3 节点关系
      • 3.4 节点层次
      • 3.5 树的深度
    • 4 二叉树
      • 4.1 定义
      • 4.2 二叉树特点
      • 4.3 二叉树性质
      • 4.4 斜树
      • 4.5 满二叉树
      • 4.6 完全二叉树
      • 4.7 二叉树的存储结构
    • 5 二叉树遍历
      • 5.1 定义
      • 5.2 前序遍历
      • 5.3 中序遍历
      • 5.4 后序遍历
      • 5.5 遍历程序
        • Main.class
      • 测试结果:
      • 5.6 层次遍历
        • 测试结果:
      • 5.7 考点
      • 6 结语

1 前言

是数据结构中的重中之重,尤其以各类二叉树为学习的难点。本文将详细讲述树的基本概念以及树构造和遍历,为后续深入学习做好基础。

2 概念

2.1 节点

节点:是数据结构中的基础,是构成复杂数据结构的基本组成单位。

2.2 树节点

本系列文章中提及的节点专指树的节点。例如:节点A表示为:

3 树

3.1 定义

(Tree)是n(n>=0)个节点的有限集。n=0时称为空树。在任意一颗非空树中:
  (1)有且仅有一个特定的称为根(Root)的节点;
  (2)当n>1时,其余节点可分为m(m>0)个互不相交的有限集T1、T2、…、Tn,其中每一个集合本身又是一棵树,并且称为根的子树。
此外,树的定义还需要强调以下两点:
  (3)n>0时根节点是唯一的,不可能存在多个根节点,数据结构中的树只能有一个根节点。
  (4)m>0时,子树的个数没有限制,但它们一定是互不相交的。

例如:下图中所示的树为一棵有10个节点的一般树。
数据结构——二叉树基础_第1张图片
由树的定义可以看出,树的定义使用了递归的方式。递归在树的学习过程中起着重要作用。

3.2 节点的度

定义:节点拥有的子树数目称为节点的。例如:下图中标注了3.1所示树的各个节点的度。
数据结构——二叉树基础_第2张图片

3.3 节点关系

节点子树的根节点为该节点的孩子节点。相应该节点称为孩子节点的双亲节点。3.2图中,A为B的双亲节点B为A的孩子节点
  同一个双亲节点的孩子节点之间互称兄弟节点。3.2图中,B与C互为兄弟节点,GHI互为兄弟节点,EF互为兄弟节点。

3.4 节点层次

从根节点开始,根节点为第一层,根的孩子为第二层,以此类推。例如:下图表示了3.1图所示树的层次关系

你可能感兴趣的:(数据结构,数据结构,二叉树,java,算法)