【数据结构_树_Tree_0976】利用二叉树统计度为1的结点
2017-03-18 18:54
260 查看
和统计2的那题一样,只改了一行代码;
#include <stdio.h>
#include <stdlib.h>
#include <iostream>
using namespace std;
typedef struct node
{
char data;
struct node *L_Kid,*R_Kid;
}Tree;
int cnt=0;
void initTree(Tree *&T)
{
char str;
cin>>str;
if(str!='#')
{
T=(Tree *)malloc(sizeof(Tree));
T->data=str;
initTree(T->L_Kid);
initTree(T->R_Kid);
}
else T=NULL;
}
int searchTree(Tree *&T)
{
if(T!=NULL)
{
if((T->L_Kid==NULL && T->R_Kid!=NULL) || (T->L_Kid!=NULL && T->R_Kid==NULL))
{
cnt++;
searchTree(T->L_Kid);
searchTree(T->R_Kid);
}
else
{
searchTree(T->L_Kid);
searchTree(T->R_Kid);
}
}
return cnt;
}
int main()
{
Tree *T;
initTree(T);
int m=searchTree(T);
cout<<m;
return 0;
}
#include <stdio.h>
#include <stdlib.h>
#include <iostream>
using namespace std;
typedef struct node
{
char data;
struct node *L_Kid,*R_Kid;
}Tree;
int cnt=0;
void initTree(Tree *&T)
{
char str;
cin>>str;
if(str!='#')
{
T=(Tree *)malloc(sizeof(Tree));
T->data=str;
initTree(T->L_Kid);
initTree(T->R_Kid);
}
else T=NULL;
}
int searchTree(Tree *&T)
{
if(T!=NULL)
{
if((T->L_Kid==NULL && T->R_Kid!=NULL) || (T->L_Kid!=NULL && T->R_Kid==NULL))
{
cnt++;
searchTree(T->L_Kid);
searchTree(T->R_Kid);
}
else
{
searchTree(T->L_Kid);
searchTree(T->R_Kid);
}
}
return cnt;
}
int main()
{
Tree *T;
initTree(T);
int m=searchTree(T);
cout<<m;
return 0;
}
相关文章推荐
- 【数据结构_树_Tree_0975】利用二叉树统计结点度为2的数
- 【数据结构_树_Tree_0981】统计利用二叉树存储的森林中树的棵数
- 【数据结构_树_Tree_0972】统计利用先序计算二叉树宽度
- 【数据结构_树_Tree_1105】交换二叉树的孩子结点
- 【数据结构_树_Tree_0973】利用二叉树计算叶结点个数
- 【数据结构_树_Tree_0982】利用二叉树储存普通树的度
- 【数据结构_树_Tree_0983】利用二叉树中序和后序遍历确定二叉树的先序遍历
- 【数据结构_树_Tree_0971】统计利用先序遍历创建的二叉树的深度
- UVA 548 Tree(数据结构,二叉树,遍历)
- ※数据结构※→☆非线性结构(tree)☆============二叉树 顺序存储结构(tree binary sequence)(十九)
- 数据结构之二叉树的遍历 HDU1710 Binary Tree Traversals
- 数据结构-----后序遍历二叉树非递归算法(利用堆栈实现)
- 数据结构学习:利用链表建立二叉树
- 【数据结构】二叉树结点插入和前序、中序、后序遍历的递归实现
- 程序员面试题精选100题(48)-二叉树两结点的最低共同父结点[数据结构]
- 数据结构-二叉树(Binary Tree)
- 【二叉树】利用树结点本身指针域遍历二叉树
- 第10周 数据结构实践项目——树和二叉树(1)【项目3 - 利用二叉树遍历思想解决问题 ]
- C数据结构设计中,表首结点和二叉树根结点的头指针——传指针还是传指针的指针?
- 【Leetcode】Binary Tree Paths 二叉树根结点到所有叶子结点的路径