2023年6月22日发(作者:)
C语⾔实现:计算⼆叉树的深度和节点个数#include "binary_tree.h"int GetTreeDepth(BiTreeNode* root)//
计算该⼆叉树的深度//
参数:⼆叉树根节点root//
返回:⼆叉树的深度{
int m; int n; if(root==NULL) { return 0; } else { m=GetTreeDepth(root->right); n=GetTreeDepth(root->left); if(m>n) { return m+1; } else return n+1; }}int GetNodeNumber(BiTreeNode* root)//
计算该⼆叉树的总节点个数//
参数:⼆叉树根节点root//
返回:⼆叉树的总节点个数{
if(root==NULL) { return 0; } else return GetNodeNumber(root->left)+GetNodeNumber(root->right)+1;
/********** End **********/}int GetLeafNodeNumber(BiTreeNode* root)//
计算该⼆叉树的叶⼦节点个数//
参数:⼆叉树根节点root//
返回:⼆叉树的叶⼦节点个数{
if(root==NULL) return 0; else if(root->left==NULL&&root->right==NULL) return 1; else return GetLeafNodeNumber(root->left)+GetLeafNodeNumber(root->right);
}
发布者:admin,转转请注明出处:http://www.yc00.com/web/1687381468a5813.html
评论列表(0条)