题目:

 

代码:

#include<iostream>
using namespace std;
typedef struct BinaryTree
{
	char data;
	struct BinaryTree* left;
	struct BinaryTree* right;
}BT;
void BinaryTreeCreate(BT*& ps)//二叉树创建
{
	char a;
	cin >> a;
	if (a == '#')
		ps = NULL;
	else
	{
		ps = (BT*)malloc(sizeof(BT));
		ps->data = a;
		BinaryTreeCreate(ps->left);
		BinaryTreeCreate(ps->right);
	}
}
//求叶子结点个数
int BinaryTreeLeafSize(BT* ps)
{
	if (ps == NULL)
		return 0;
	if (ps->left == NULL && ps->right == NULL)//左右子树都为空时返回1
		return 1;
	return BinaryTreeLeafSize(ps->left) + BinaryTreeLeafSize(ps->right);
}
int main()
{
	BT* tree;
	BinaryTreeCreate(tree);
	printf("%d", BinaryTreeLeafSize(tree));
	return 0;
}

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐