• 前序遍历 中序遍历 后序遍历


    前序遍历(DLR)

    前序遍历也叫做先根遍历、先序遍历,可记做根左右。

    前序遍历首先访问根结点然后遍历左子树,最后遍历右子树。在遍历左、右子树时,仍然先访问根结点,然后遍历左子树,最后遍历右子树。

    二叉树为空则结束返回,否则:

    (1)访问根结点。

    2)前序遍历左子树

    (3)前序遍历右子树 。

    需要注意的是:遍历左右子树时仍然采用前序遍历方法。

    如右图所示二叉树

      

    前序遍历,也叫先根遍历,遍历的顺序是,根,左子树,右子树

    遍历结果:ABDECF

    中序遍历,也叫中根遍历,顺序是 左子树,根,右子树

    遍历结果:DBEAFC

    后序遍历,也叫后根遍历,遍历顺序,左子树,右子树,根

    遍历结果:DEBFCA

    编辑本段程序实现

    树的遍历一般都用递归实现,比较方便

    C语言版本

    树中节点结构为:

    typedef struct TreeNode

    {

    int data;

    TreeNode * left;

    TreeNode * right;

    TreeNode * parent;

    }TreeNode;

    void pre_order(TreeNode* Node)

    {

    if(Node != NULL)

    {

    printf("%d ",Node->data);

    pre_order(Node->left);

    pre_order(Node->right);

    }

    }

    调用时: pre_order(Root); //Root为树的根

  • 相关阅读:
    线程练习-网络买票
    永久储存信息(已完善)
    Linux命令
    oracle(3)
    小结
    java开发中中文编码问题
    double保留两位小数
    oracle(2)
    javadate相关
    分布式
  • 原文地址:https://www.cnblogs.com/qiaoyanlin/p/6746930.html
Copyright © 2020-2023  润新知