Acm5-树的基本了解

来源:互联网 发布:卡尔曼滤波算法应用 编辑:程序博客网 时间:2024/05/22 07:44

微笑 树

(1)基本了解:

  a.树的定义:由有限个结点构成的集合;

  b.特点:仅有就一个根结点,且其他的子树都会有前躯;

         叶子只有父结点,没有子结点,树属于非线性结构,依然有顺序存储,及链式存储;

  c.了解各种名词:根结点,前驱,后躯,子结点,父结点,右兄弟,左孩子,树的度(在每个节点所用的子结点的个数中最大的一个),树的深度(数的层数)。

 (2)重点需知:

a.结点个数的计算:假如树的深度是k:总的结点数为:2^k-1;第k层的结点数为:2^(k-1)-1;

b.总结点n的范围(依然假设有k层):2^(k-1)-1<n<=2^(k)-1;(或者2^(k-1)<=n<2^(k));

c.由b可总结的树深度的求法:k=log2(n)+1;

D. n表示总结数,n0表示0度结点,n1表示1度结点,n2表示2度结点;

  n=n0+n1+n2;

  n=n1+2n2+1;

  由此我们可以推出一个公式:n0=n2+1;即叶子的总数=2度结点+1;

2.二叉树

   (1)基本了解

   a.特点:仅有一个根结点;

          且每个子结点最多只有两个孩子;

b.二叉树的访问类型

  1).先序遍历:根、左、右

  2).中序遍历:左、根、右

  3).后序遍历:左、右、根

(2)特别了解

  1)满叉树、完全树

  2).解释:

  满叉树:即在倒数第二层的节点均属于2度结点;

  完全树:在最后一层;从右向左依次连续的删除多个结点(叶子);且我们会发现在最后一层的叶子都是向左边靠拢的;并且,若存在1度结点,那么该结点的孩子一定是左孩子;

原创粉丝点击