首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >Python|二叉树的遍历问题解决方法

Python|二叉树的遍历问题解决方法

作者头像
算法与编程之美
发布2021-05-08 15:37:15
发布2021-05-08 15:37:15
3770
举报

问题描述

二叉树是由n个结点的有限集合,该集合或者为空集,或者由一个根节点和两颗互不相交的、分别称为根节点的左子树和右子树的二叉树组成。

二叉树特征:每个结点最多只有两颗子树,即二叉树中结点的度最高不能超过2个,子树的左右顺序不能颠倒。

解决方案

遍历的口诀:

先序遍历,即先根再左再右;

中序遍历:即先左再根再右;

后序遍历:即先左再右再根

二叉树层次遍历问题Python代码

void level(BTNode *p){ int front,rear; BTNode *que[maxsize]; front = rear = 0; BTNode *q; if(p != NULL) { rear = (rear + 1)%maxsize; que[rear] = p; while(front != rear) { front = (front + 1)%maxsize; q = que[front]; Visit(q); if(q -> 1child != NULL) { rear = (rear +1)%maxsize; que[rear] = q -> 1child; } if(q -> rchild != NULL) { rear = (rear + 1)%maxsize; } } }}

结语

本文描述了二叉树的定义和特征,并归纳了二叉树的遍历算法,总的来说二叉树的遍历只要记住口诀就挺好做的,难点在于它的python代码,我们这方面的知识点比较欠缺,希望在以后的学习中能逐渐突破自己。

主编:欧洋

作者:代婷婷、王梓霖、童弘宇

稿件来源:深度学习与文旅应用实验室(DLETA)

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-05-04,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 算法与编程之美 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档