admin 管理员组

文章数量: 1184232


2024年9月15日发(作者:api接口怎么测试)

二叉树结点总数.h

#include

#include

#include

//预定义常量

#define OK 1

#define ERROR 0

#define TRUE 1

#define FALSE 0

#define OVERFLOW -2

//函数结果状态码

typedef int Status;

//二叉树数据类型

typedef char TElemType;

//二叉树结点类型定义

typedef struct BiTNode{

TElemType data;

struct BiTNode *lchild,*rchild;

} BiTNode,*BiTree;

//函数原型声明

Status CreateBiTree(BiTree &T);//创建二叉链表(按先序序列建立二叉树)

Status NodeNum(BiTree T,int *n);

.cpp文件

#include"二叉树结点总数.h"

Status CreateBiTree(BiTree &T){

char ch;

ch=getchar();

if (ch=='#') T=NULL;

else {

if(!(T=(BiTree)malloc(sizeof(BiTNode))))

exit(OVERFLOW);

T->data=ch; //生成根节点

CreateBiTree(T->lchild); //构造左子树

CreateBiTree(T->rchild); //构造右子树

}

return OK;

}//CreateBiTree

Status NodeNum(BiTree T,int *n) {

if (T) {

if(T->data) (*n)++;

if (NodeNum(T->lchild,n))

}

.cpp文件

#include"二叉树结点总数.h"

void main(){

BiTree T;

}

int n=0,*p;

p=&n;

printf("创建二叉树:");

CreateBiTree(T);

NodeNum(T,p);

printf("二叉树结点总数为:%dn",*p);

if(NodeNum(T->rchild,n)) return OK;

return ERROR;

}else return OK;


本文标签: 二叉树 结点 函数 接口 总数