数据结构与算法分析——c语言描述 练习4.28 答案
int countNodes(AvlTree t) {
if (t == NULL)
return 0;
return countNodes(t->left) + countNodes(t->right) + 1;
}
int countLeaves(AvlTree t) {
if (t == NULL)
return 0;
else if (t->left == NULL&&t->right == NULL)
return 1;
else
return countLeaves(t->left) + countLeaves(t->right);
}
int countFull(AvlTree t) {
if (t == NULL)
return 0;
else if (t->left &&t->right)
return countFull(t->left) + countFull(t->right) + 1;
else
return countFull(t->left) + countFull(t->right);
}