编写非递归算法,求二叉树中叶子结点的个数
收起
知与谁同
2018-07-16 15:57:18
3288
0
1
条回答
写回答
取消
提交回答
-
int getleafnum(Node *root)
{
int num = 0;
Node *p = root;
init();
push(p);
while (!empty())
{
while ((p = gettop()) && p != NULL)
{
push(p->lchild);
}
p = pop();
if (!empty())
{
p = pop();
if (p->lchild == NULL && p->rchild == NULL) num++;
push(p->rchild);
}
}
return num;
}
2019-07-17 22:54:44