一、二叉树
1、基本概念
树(tree)是n(n>=0)个结点的有限集,只有一个根节点,子树的数目没有限制,但一定是不想交的。树的定义用子递归的方式。节点的度:节点拥有子树的数目。
二叉树(binary tree)是指树中节点的度不大于2的有序树,它是一种最简单且最重要的树。
二叉树的递归定义为:二叉树是一棵空树,或者是一棵由一个根节点和两棵互不相交的,分别称作根的左子树和右子树组成的非空树;左子树和右子树又同样都是二叉树 。
没有父节点的节点叫做根节点,图中F为根节点,C为A和D的父节点,A、D、H、G互为兄弟节点,没有子节点的节点叫做叶子节点或者叶节点,A 、B 、H、 M都是叶子节点。
小结:二叉树可以是空树(n>=0)。
二叉树特点:每个节点最多两颗子树,左子树,右子树(互不相交);左子树和右子树是有顺序的;即便树中某个节点只有一颗子树也要区分它是左子树还是右子树。