学校的数据结构实验_二叉树c语言实现

Posted on 2023-05-10 22:07  玄灵镜  阅读(14)  评论(0编辑  收藏  举报

二叉树的实现包括二叉树的构建,和二叉树的前中后序便利,二叉树的层序非递归遍历,求二叉树的总结点,求二叉树的最大深度和求二叉树的最大宽度,

因为实验主要是对二叉树的各个属性数据测量,所以这里手动链接了一颗二叉树.随后用调用函数接口传参二叉树的根节点测量二叉树的属性.

递归遍历很容易:

 接下来是非递归:

选用层序遍历非递归,运用队列的数据结构辅助实现层序遍历;

 然后是求最大深度:

 总结点数和宽度:

 用层序遍历的思想加一个计数器计算总节点.

 最大宽度这里也是运用层序遍历的思想实现,只不过这里用了一个for循环控制队列的行为,使其满足要求.

 

测试结果符合预期

Copyright © 2024 玄灵镜
Powered by .NET 8.0 on Kubernetes