永发信息网

递归统计二叉树中度为1的节点个数,请问这么编哪里错了?

答案:1  悬赏:10  手机版
解决时间 2021-04-05 02:15
  • 提问者网友:niaiwoma
  • 2021-04-04 05:04
在线等~~谢谢啦~~~

int Tree::OneTotal(TreeNode *p){
if(p->lChild!=NULL&&p->rChild!=NULL){
return OneTotal(p->rChild)+OneTotal(p->lChild);
}
else if(p->lChild!=NULL&&p->rChild==NULL){
return 1+OneTotal(p->lChild);
}
else if(p->rChild!=NULL&&p->lChild==NULL){
return 1+OneTotal(p->rChild);
}
else if(p->rChild==NULL&&p->lChild==NULL)
return 0;
else
return -1;
}
最佳答案
  • 五星知识达人网友:躲不过心动
  • 2020-02-06 08:30
太繁琐了:
int Tree::OneTotal(TreeNode *p)
{
int n = 0;
if (p)
{
if (p->lChild && !p->rChild || !p->lChild && p->rChild)
++ n;
n += OneTotal(p->rChild) + OneTotal(p->lChild);
}
return n;
}
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯