algorithm - 如何计算二叉树中右 child 的数量?

标签 algorithm data-structures binary-tree

如何统计二叉树中右 child 的个数?

这意味着我只想要标记为正确的 child 。

例。

(Left | Right)

      F(Root)    
  G   |   H     
T   U |  I  J  

正确的 child 是 U、H 和 J。

找到这些的算法是什么。

最佳答案

int count(Tree *r){
    if(r == NULL) return 0;
    int num_l=0, num_r=0;
    if(r->left != NULL) 
        num_l = count(r->left);
    if(r->right != NULL) 
        num_r = count(r->right)+1;
    return num_l+num_r
}

关于algorithm - 如何计算二叉树中右 child 的数量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2634890/

相关文章:

python - 如何从给定矩阵创建字典

java - 何时使用 extends 或 Implements Comparable (Java) ? + 为什么我无法创建对象

c++ - 排序算法的交换函数不适用于排序函数的参数。

java - 组合java的组合

algorithm - wordweb英语词典是如何实现的?

algorithm - 合并单链表的两半

c++ - 在将函数create_ll的返回类型更改为struct node *并显示为void之后,为什么链表的元素没有显示?

c++ - 访问数组之外​​的内存,二叉堆树

c# - 映射 URL 或本地路径的数据结构

Java TreeMap 排序选项?