求二叉树中所有度为2的结点个数


求二叉树中所有度为2的结点个数

思路

利用树的递归性质,使用递归算法,结点b以下的所有结点中度为2的结点个数为左子树+右子树中度为2的结点个数+b自身是否为度为2
的结点

1、f(b)=0 若b为null
2、f(b)=f(b->lchild)+f(b->rchlid)+1 若b为双分支结点
3、f(b)=f(b->lchild)+f(b->rchlid) 其他情况,即b为单分支结点或叶结点

另一解法

也可以依次遍历所有结点,检查左右子树是否存在,但是这种比较麻烦。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM