博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
计算二叉树总结点/叶结点个数
阅读量:6288 次
发布时间:2019-06-22

本文共 1155 字,大约阅读时间需要 3 分钟。

hot3.png

#include 
#include
typedef struct _BT_NODE{ int data; struct _BT_NODE* left; struct _BT_NODE* right;}BT_NODE;BT_NODE* AppendNode(int data){ BT_NODE* node=(BT_NODE*)malloc(sizeof(BT_NODE)); node->left=NULL; node->right=NULL; node->data=data; return node;}int BinTreeNodeCount(BT_NODE* root){ int nodeNum=1; if(!root)return 0; nodeNum+=BinTreeNodeCount(root->left); nodeNum+=BinTreeNodeCount(root->right); return nodeNum;}int BinTreeLeafNodeCount(BT_NODE* root){ int nodeNum=0; if(!root)return 0; if(root->left==NULL && root->left==NULL) nodeNum++; else { nodeNum+=BinTreeLeafNodeCount(root->left); nodeNum+=BinTreeLeafNodeCount(root->right); } return nodeNum;}int main(void) { BT_NODE* root; /* 10 /\ 20 3015 16 */ root=AppendNode(10); root->left=AppendNode(20); root->right=AppendNode(30); root->left->left=AppendNode(15); root->left->right=AppendNode(16); printf("The binary tree has %d node(s).\n",BinTreeNodeCount(root)); printf("The binary tree has %d leaf node(s).\n",BinTreeLeafNodeCount(root)); return 0;}

 

转载于:https://my.oschina.net/betayuan/blog/1548864

你可能感兴趣的文章
Python系语言发展综述
查看>>
新手 开博
查看>>
借助开源工具高效完成Java应用的运行分析
查看>>
163 yum
查看>>
第三章:Shiro的配置——深入浅出学Shiro细粒度权限开发框架
查看>>
80后创业的经验谈(转,朴实但实用!推荐)
查看>>
让Windows图片查看器和windows资源管理器显示WebP格式
查看>>
我的友情链接
查看>>
vim使用点滴
查看>>
embedded linux学习中几个需要明确的概念
查看>>
mysql常用语法
查看>>
Morris ajax
查看>>
【Docker学习笔记(四)】通过Nginx镜像快速搭建静态网站
查看>>
ORA-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务
查看>>
<转>云主机配置OpenStack使用spice的方法
查看>>
java jvm GC 各个区内存参数设置
查看>>
[使用帮助] PHPCMS V9内容模块PC标签调用说明
查看>>
关于FreeBSD的CVSROOT的配置
查看>>
基于RBAC权限管理
查看>>
数学公式的英语读法
查看>>