📄 bitreenode.h
字号:
//这是二叉树结点为BiTreeNode<T>的定义与实现
//并定义了由结点构造二叉树的外部函数GetTreeNode
#ifndef BITREENODE_H
#define BITREENODE_H
#include "iostream.h"
#include "stdlib.h"
template<class T>
class BiTreeNode
{
private:
T data; //数据域
BiTreeNode<T> *leftChild; //左子树指针
BiTreeNode<T> *rightChild; //右子树指针
public:
BiTreeNode() //用于构造空树的根结点
{ leftChild=NULL; rightChild=NULL; }
BiTreeNode(T item, BiTreeNode<T> *left=NULL,BiTreeNode<T> *right=NULL)
{ //根据数据域item及左、右子树指针left、right构造一般树结点
data=item;
leftChild=left;
rightChild=right;
}
~BiTreeNode()
{ }
T GetData() const //返回数据域的值
{ return data; }
BiTreeNode<T>* &Left(void) //返回左子树指针的引用,以便能接受左子树
{ return leftChild; }
BiTreeNode<T>* &Right(void)//返右子树指针的引用,以便能接受右子树
{ return rightChild; }
};
//外部函数:由结点构造二叉树
template<class T>
BiTreeNode<T>* GetTreeNode(T item, BiTreeNode<T>* left=NULL, BiTreeNode<T>* right=NULL)
//由给定的数据域item及左、右子树指针left、right构造二叉树的一个结点,
//返回指向该结点的指针
{
BiTreeNode<T> *p;
p=new BiTreeNode<T>(item,left,right);
if(p==NULL)
{
cerr<<"内存分配失败!\n";
exit(1);
}
return p;
}
#endif //BITREENODE_H
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -