为了账号安全,请及时绑定邮箱和手机立即绑定

【九月打卡】第12天【养成记】嵌入式挑战第12天 学习二叉树的遍历

标签:
嵌入式

课程名称:

物联网/嵌入式工程师

课程章节(阶段二第五周 二叉树 1-4):

二叉树的遍历课程链接

老师:

大白老师

课程内容:

学习二叉树的三种遍历算法

学习笔记:

  • 二叉树遍历的概念: 沿着某条搜索路径周游二叉树,对树中的每个节点访问一次并且只访问一次。

  • 遍历算法分为:层序遍历,前序遍历,中序遍历,后序遍历。

  • 前序遍历:若二叉树为空树,则空操作;否则先访问根结点 在遍历左子树 最后遍历右子树

  • 中序遍历:若二叉树为空树,则空操作;否则先访问左子树 在遍历根结点 最后遍历右子树

  • 后序遍历:若二叉树为空树,则空操作;否则先访问左子树 在遍历右子树 最后遍历根节点

  • 三种遍历主要采用递归的思想

代码

// 先序遍历   
void pre_order(bitree_t *root)
{
    if(root == NULL)
        return ;

    printf("(%d:%c) ",root->n,root->data);

    pre_order(root->lchild);

    pre_order(root->rchild);
}

// 中序遍历
void in_order(bitree_t *root)
{
    if(root == NULL)
        return ;

    in_order(root->lchild);
    
    printf("(%d:%c) ",root->n,root->data);
    
    in_order(root->rchild);
}

// 后序遍历
void post_order(bitree_t *root)
{
    if(root == NULL)
        return ;
    post_order(root->lchild);

    post_order(root->rchild);
    
    printf("(%d:%c) ",root->n,root->data);
}


打卡:

图片描述

图片描述

图片描述

课程评价

本节主要讲解二叉树的遍历算法,遍历编程思想是递归算法,大白老师把每种遍历算法的详细步骤都解释的很清楚。

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消