树的基本知识

来源:互联网 发布:优化sql查询速度 编辑:程序博客网 时间:2024/05/20 19:18

1.树的分类:

    ●一般树

        

    ●二叉树

        ●一般二叉树

            

        ●满二叉树

                 

        ●完全二叉树

                

    ●森林

           若干不交叉的树放在一起就是森林。

            

2.树的存储

   ●二叉树的存储

      ⊿连续存储

          要使用连续存储,一定要先将二叉树补全为完全二叉树,然后再进行连续存储。

      ⊿链式存储

          将每个节点定义成一个结构体,包含有三个组成部分,一部分为节点本身的数据,             一部分为左孩子,一部分为右孩子

   ●一般树的存储

       ●双亲表示法:

             

        ●孩子表示法:

             

        ●双亲孩子表示法:

            

        ●二叉树表示法:

           将一般树转换成二叉树,再将此二叉树存储即可。

           转换原则:保证每个节点的左指针域指向他的第一个孩子;

                                                      右指针域指向他的下一个兄弟。

           

   ●森林的存储

          先把森林转换成二叉树,再存储二叉树。

          

3.二叉树的操作

   ●二叉树的遍历 

      ●先序遍历

          方法:先访问根节点,再先序遍历根节点的左子树,最后先序遍历根节点的右子树

      ●中序遍历

          方法:先中序访问根节点的左子树,然后访问根节点,最后中序访问根节点的右子                        树

      ●后序遍历

          方法:先后序访问根节点的左子树,然后后序访问根节点的右子树,最后访问根节                        点

   ●根据其中两种遍历结果求二叉树的结构(只有如下两种):

     ●根据先序遍历和中序遍历求二叉树

     ●根据中序遍历和后序遍历求二叉树

    

  

0 0
原创粉丝点击