二叉树的遍历

网友投稿 732 2022-10-07

二叉树的遍历

二叉树的遍历

typedef struct TreeNode *PtrToNode;typedef struct TreeNode *BinTree;struct TreeNode{ int Data; //为简单起见,假设树节点的元素为int型 BinTree Left; BinTree Right;};

二叉树的遍历主要有先序遍历,中序遍历,后序遍历,层序遍历四种方式,下面一一介绍。

先序遍历

在先序遍历中,对节点的访问工作是在它的左右儿子被访问之前进行的。换言之,先序遍历访问节点的顺序是 “根节点->左儿子->右儿子”。由于树可以通过递归来定义,所以树的常见操作用递归实现常常是方便清晰的。递归实现的代码如下:

void PreOrderTraversal(BinTree BT){ if( BT ) { printf(“%d\n”, BT->Data); //对节点做些访问比如打印 PreOrderTraversal(BT->Left); //访问左儿子 PreOrderTraversal(BT->Right); //访问右儿子 }}

中序遍历

后序遍历

层序遍历

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:基于 RT-Thread 的智能家居系统实战案例
下一篇:分享小程序API的认证方式实例(小程序api接口怎么用)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~