首页 > 其他 > 详细

求非空二叉树b的宽度(具有结点数最多的那一层的结点个数)

时间:2021-06-18 11:44:34      阅读:12      评论:0      收藏:0      [点我收藏+]

非空二叉树b的宽度

有三种解决方案

方案一 记录每个结点的所在层数

比较麻烦,最后还得写一个循环去找出结点数最多的层

方案二 加一个队列,在循环过程中就记录当前结点数最多的层

即用两个队列来完成层次遍历,上一层遍历完的时候那个队列也为空,此时另一个队列的长度就是该层的结点数量

方案三 加间隔结点,即使用一个队列完成统计每个层的结点数

就是之前非递归求二叉树的高度的算法,在每一层的最后一个结点加上一个指针,当遍历到这个指针指向的结点时就把这个指针指向现在的队尾元素。这样就完成了标记。

求非空二叉树b的宽度(具有结点数最多的那一层的结点个数)

原文:https://www.cnblogs.com/imatrix-wyl/p/14898380.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!