bitree.h
来自「王红梅编《数据结构》大多数的实验源码。内附详细的实验报告。」· C头文件 代码 · 共 81 行
H
81 行
#ifndef BiTree_H
#define BiTree_H
template <class T>
struct BiNode
{
// 结点的数据
T data;
// 左孩子和右孩子
BiNode<T> *lchild, *rchild;
};
template <class T>
class BiTree
{
public:
/*
@ BiTree
前置条件: 二叉树不存在
输入: 无
功能: 构造一个新二叉树
输出: 无
后置条件: 新的二叉树被构造
*/
BiTree();
/*
@ ~BiTree
前置条件: 二叉树存在
输入: 无
功能: 析构二叉树
输出: 无
后置条件: 二叉树被析构
*/
~BiTree();
/*
@ CountLeaf
前置条件: 二叉树存在
输入: count (引用)
功能: 统计叶子个数
输出: 无
后置条件: count值成为了各自个数的值
*/
void CountLeaf(int &count);
private:
/*
@ Create
前置条件: 二叉树不存在
输入: 二叉树的根结点和各个结点的扩展的前序遍历序列
功能: 建立一个新的二叉树
输出: 一个新的二叉树
后置条件: 二叉树被建立
*/
BiNode<T> *Create(BiNode<T> *root);
/*
@ Release
前置条件: 二叉树存在
输入: 根节点
功能: 递归析构二叉树
输出: 无
后置条件: 二叉树被析构
*/
void Release(BiNode<T> *root);
/*
@ CountLeaf
前置条件: 二叉树存在
输入: 根结点,count (引用)
功能: 统计叶子个数
输出: 无
后置条件: count值成为了各自个数的值
*/
void CountLeaf(BiNode<T> *root, int &count);
BiNode<T> *root;
};
#endif
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?