二叉树的定义

来源:互联网 发布:怎么比对两列数据 编辑:程序博客网 时间:2024/05/29 18:09

  二叉树是树形结构的一个重要类型。许多实际问题抽象出来的数据结构往往是二叉树的形式,即使是一般的树也能简单地转换为二叉树,而且二叉树的存储结构及其算法都较为简单,因此二叉树显得特别重要。

二叉树的定义

1.二叉树的递归定义
  二叉树(BinaryTree)是n(n≥0)个结点的有限集,它或者是空集(n=0),或者由一个根结点及两棵互不相交的、分别称作这个根的左子树和右子树的二叉树组成。

2.二叉树的五种基本形态
   二叉树可以是空集;根可以有空的左子树或右子树;或者左、右子树皆为空。
  二叉树的五种基本形态如下图所示。 
  
3.二叉树不是树的特例 
(1)二叉树与无序树不同
   二叉树中,每个结点最多只能有两棵子树,并且有左右之分。
  二叉树并非是树的特殊情形,它们是两种不同的数据结构。

(2)二叉树与度数为2的有序树不同
  在有序树中,虽然一个结点的孩子之间是有左右次序的,但是若该结点只有一个孩子,就无须区分其左右次序。而在二叉树中,即使是一个孩子也有左右之分。
  【例】下图中(a)和(b)是两棵不同的二叉树,它们同右图中的普通树(作为有序树或无序树)很相似,但却不等同于这棵普通树。若将这三棵树均看做普通树,则它们就是相同的了。
      
  二叉树并非是树的特殊情形,它们是两种不同的数据结构。


转载自:http://www.educity.cn/zk/sjjg/200608281154461463.htm

0 0