首页 > 试题广场 >

设t是给定的一棵二叉树,下面的递归程序count(t)用于求

[不定项选择题]
设t是给定的一棵二叉树,下面的递归程序count(t)用于求得:
typedef struct node
{
    int data;
    struct node *lchild,*rchild;
}node;

int N2 = 0,NL = 0,NR = 0,N0 = 0;
void count(node *t)
 {
     if (t->lchild!=NULL)
         if (t->rchild!=NULL) N2++;
         else NL++;
     else if (t->rchild!=NULL) NR++;
     else N0++;
     if(t->lchild!=NULL) count(t->lchild);
     if(t->rchild!=NULL) count(t->rchild);
 }/* call form :if(t!=NULL) count(t);*/

  • N0为左、右两个儿子均非空的结点个数
  • NL为左儿子非空、右儿子为空的节点个数
  • NR为右儿子非空、左儿子为空的节点个数
  • N2为叶子结点个数
推荐
二叉树t中具有非空的左、右两个儿子的结点个数N2;只有非空左儿子的个数NL;只有非空右儿子的结点个数NR和叶子结点个数N0。N2,NL,NR、N0都是全局量,且在调用count(t)之前都置为0。
编辑于 2015-01-07 11:11:56 回复(1)

源代码相当于先序遍历二叉树,求以下的信息:

N2:左右孩子都非空的结点的个数

//源代码等价于
if (t->lchild!=NULL && t->rchild!=NULL)
   N2++;

NL:左孩子非空、右孩子为空的结点的个数

//源代码等价于
if (t->lchild!=NULL && t->rchild==NULL)
   NL++;

NR:左孩子为空、右孩子非空的结点的个数

//源代码等价于
if (t->lchild==NULL && t->rchild!=NULL)
   NR++;

N0:左孩子右孩子都为空的结点的个数

//源代码等价于
if (t->lchild==NULL && t->rchild!=NULL)
   N0++;
发表于 2022-07-18 21:50:17 回复(0)
xxj头像 xxj
节点长度
发表于 2014-11-13 11:02:38 回复(0)
May头像 May
NL是该树的左结点数目
NR是该树的右结点数目
N2是左右结点都存在的结点数目
N0是该树的叶子结点数目
发表于 2014-12-19 21:01:09 回复(2)
只有左儿子节点数(NL)
只有右儿子节点数(NR)
无儿子节点数(N0)
两儿子节点数(N2)
发表于 2014-12-10 12:10:23 回复(0)
else NL++;是跟那句的
发表于 2022-07-14 17:26:18 回复(0)
这答案的描述有歧义,“只有”这两字让我一开始误以为指的是此函数只能计算这个值
发表于 2021-04-01 20:49:42 回复(0)

这题不是全选吗 怎么答案是BC

发表于 2019-10-13 07:11:34 回复(0)
我后来发现 其实因为变量都很规范,直接看就知道了  N0 nl nr 哈哈哈哈或
发表于 2018-02-14 13:40:35 回复(0)
度为2的结点数,叶子结点数,左子树的数,右子树的数。
发表于 2014-12-25 20:03:54 回复(0)
树的节点数
发表于 2014-12-13 10:35:45 回复(0)
有两个子节点,一个左节点,一个右节点以及没有子节点的节点数量
发表于 2014-12-02 20:58:10 回复(0)
交换机
发表于 2014-12-01 17:47:21 回复(0)
NL  lchind count
N0   Rchild count 

N2  tree 
发表于 2014-11-28 23:20:23 回复(0)
用于求得二叉树具有非空左右两个儿子节点的节点个数
发表于 2014-11-25 11:08:07 回复(0)
撒头像
{ if (t->lchild!=NULL) if (t->rchild!=NULL) N2++; else NL++; else if (t->rchild!=NULL) NR++; else N0++; if(t->lchild!=NULL) count(t->lchild); if(t->rchild!=NULL) count(t->rchild); }/* call form :if(t!=NULL) count(t);*/
发表于 2014-11-18 20:09:00 回复(0)
给定二叉树t中,统计度为2的结点个数并保存在N2中,统计 度为1并且只有左孩子结点个数并保存在NL中,统计 度为1并且只有右孩子结点个数并保存在NR中, 统计度为0的结点个数并保存在N0中
发表于 2014-11-08 13:51:00 回复(0)
2424
发表于 2014-11-07 16:32:55 回复(0)
N0代表既有左孩纸又有右孩纸,
N2代表没有孩纸
NL代表没有左孩纸
NR代表没有右孩纸
本题求的是各个结点的孩纸的个数
发表于 2014-11-03 16:48:27 回复(0)