int FindLeavesOfBinaryTree(BinaryTreeNode* pRoot) //求二叉树叶子结点的个数
{
if (pRoot == NULL)
return 0;
if (pRoot->_pLeft == NULL && pRoot->_pRight == NULL)
return 1;
return FindLeavesOfBinaryTree(pRoot->_pLeft)+FindLeavesOfBinaryTree(pRoot->_pRight);
}
int FindNumOfNodeInTheKLevelOfBinaryTree(BinaryTreeNode* pRoot, size_t k) //求K层结点个数
{
if (pRoot == NULL || k<0)
return 0;
if (k == 0)
return 1;
return FindNumOfNodeInTheKLevelOfBinaryTree(pRoot->_pLeft, k-1) + FindNumOfNodeInTheKLevelOfBinaryTree(pRoot->_pRight, k-1);
}
求二叉树叶子节点的个数/求二叉树第k层的节点个数
最新推荐文章于 2024-03-07 18:05:24 发布