20-数据结构_树-操作-遍历_树的应用

四, 操作(通常为二叉树的操作)

1, 树的遍历

   将非线性的树转换成线性的,有三种规则: 

    1) 先序遍历

       根 左 右:
        A. 先 访问根结点
        B. 再 先序 访问左子树

        C. 后 先序 访问右子树

20-数据结构_树-操作-遍历_树的应用_第1张图片

    2) 中序遍历

        左 根 右

20-数据结构_树-操作-遍历_树的应用_第2张图片

    3) 后序遍历

        左 右 根
20-数据结构_树-操作-遍历_树的应用_第3张图片

2, 已知两种遍历, 求原始二叉树

   即, 
    先序 + 中序 => 原始二叉树 
    后序 + 中序 => 原始二叉树 
   注意: 先序 和 后序 不能推出 原始二叉树

   1) 已知 先序 和 中序

20-数据结构_树-操作-遍历_树的应用_第4张图片

20-数据结构_树-操作-遍历_树的应用_第5张图片

   2) 已知 后序 和 中序

20-数据结构_树-操作-遍历_树的应用_第6张图片

   总结:

    确定左右子树: 中序
    确定子树根结点: 先序 / 后序

五, 应用

1, 树是数据库中数据组织的一种重要形式
2, 操作系统父子进程关系
3, 面向对象语言中类的继承关系
4, 赫夫曼树

你可能感兴趣的:(数据结构,遍历,树的应用,树的操作)