统计叶节点

原创 2015年11月20日 18:51:35

数据结构实验之二叉树三:统计叶子数

Time Limit: 1000MS Memory limit: 65536K

题目描述

已知二叉树的一个按先序遍历输入的字符序列,如abc,,de,g,,f,,, (其中,表示空结点)。请建立二叉树并求二叉树的叶子结点个数。

输入

连续输入多组数据,每组数据输入一个长度小于50个字符的字符串。

输出

输出二叉树的叶子结点个数。

示例输入

abc,,de,g,,f,,,

示例输出

3




#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<malloc.h>
char q[100];int i,count;
struct node
{
    char data;
    struct node *l,*r;
};
struct node *creat(struct node *p)
{


    if(q[i++]==',')
     p=NULL;
    else
    {
        p=(struct node *)malloc(sizeof(struct node));
        p->data=q[i-1];
        p->l=creat(p->l);
        p->r=creat(p->r);
    }
    return p;
}
void CountLeaf(struct node *p,int &count){
if(p){
if((!p->l)&&(!p->r))
count++;
CountLeaf(p->l,count);
CountLeaf(p->r,count);
}
}
int main()
{


   while(scanf("%s",q)!=EOF)
    {i=0;count=0;
        struct node *head;
        head = (struct node *)malloc(sizeof(struct node));
        head = creat(head);
     CountLeaf(head,count);
     printf("%d\n",count);
    }
    return 0;
}

相关文章推荐

[leetcode-二叉树层次遍历并统计每层节点数]--102. Binary Tree Level Order Traversal

Question 102. Binary Tree Level Order Traversal Given a binary tree, return the level order traver...

完全二叉树统计节点个数【使用二分搜索】

【题目】 给定一棵完全二叉树的根节点root,返回这棵树的节点个数。如果完全二叉树的节点数为N,请实现时间复杂度低于O(N)的解法。 给定树的根结点root,请返回树的大小。 ”打眼“一看,这是...

带头节点循环单链表的操作(创建,保序插入,指定插入,删除指定表元,删除相同元素,统计某元素表元个数)

//循环单链表的操作 #include struct Node {  int data;  Node *next; }; //创建操作 Node *Creat(int n) { ...
  • yxm418
  • yxm418
  • 2012年03月14日 21:51
  • 1009

openstack节点资源统计

今天跟踪了下openstack 资源的一个统计情况,记录下 1.节点资源统计在compute_notes表中 2.利用update_available_resource函数读取系统  /pro...

BUPT OJ 统计节点个数

#include #define MAXSIZE 1000 using namespace std; class node { public: int degree; int parent;...

kAri OJ 92 统计节点个数 邻接表

92. 统计节点个数 时间限制 1000 ms 内存限制 65536 KB 题目描述 给出一棵有向树,一共有N(1N≤1000)个节点,如果一个节点的度(入度+出度)不小于它...

不带头结点的单链表的插入,删除,原地转置,判断空,清空,统计节点数目等操作

//不带头结点的单链表 #include #include //链表结构体 typedef struct _Node { int val; struct _Node* next; }Node,*L...

第4章第1节练习题3 二叉树特殊节点个数统计

分别采用递归与非递归的方式实现对二叉树中度为0的节点,度为1的结点,度为2的结点的个数统计,并且简单分析了递归传值的过程。...

Dom4j 统计子节点个数

Dom4j 统计子节点个数 前言   最近在使用dom4j对XML进行解析的过程中,遇到一些问题,笔者在这里和大家一起分享一下。   首先,说下需要的具体要求...

关于B树的思考:m阶B树的非根非叶节点为什么要至少为ceil(m/2)个孩子?

非根非叶子节点 因为小于ceil(m/2)时可以进行合并。
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:统计叶节点
举报原因:
原因补充:

(最多只允许输入30个字)