📄 c6-1.h
字号:
// c6-1.h 二叉树的顺序存储结构。在教科书第126
#define MAX_TREE_SIZE 100 // 二叉树的最大结点数
//typedef TElemType SqBiTree[MAX_TREE_SIZE]; // 0号单元存储根结点
struct position // 加
{
int level,order; // 结点所在的层,在该层的序号(按满二叉树计算)
};
template<class T>
class SqBiTree
{
private:
T SQBiTree[MAX_TREE_SIZE];
public:
SqBiTree();
~SqBiTree();
void CreateBiTree();
void ClearBiTree();
bool BiTreeEmpty();
int BiTreeDepth();
bool Root(T &e);
T Value(position e);
bool Assign(position e,T value);
T Parent(T e);
T LeftChild(T e);
T RightChild(T e);
T LeftSibling(T e);
T RightSibling(T e);
bool DeleteChild(position p,int LR);
void(*VisitFunc)(T);
void PreTraverse(int e);
void PreOrderTraverse(void(*Visit)(T));
void InTraverse(int e);
void InOrderTraverse(void(*Visit)(T));
void PostTraverse(int e);
void PostOrderTraverse(void(*Visit)(T));
void LevelOrderTraverse(void(*Visit)(T));
void visit(T e);
void Print();
friend void Move(SqBiTree<int> &c,int j,SqBiTree<int> &t,int i);
friend void Move(SqBiTree<char> &c,int j,SqBiTree<char> &t,int i);
friend void InsertChild(SqBiTree<int> &t,int p,int LR,SqBiTree<int> &c);
friend void InsertChild(SqBiTree<char> &t,char p,int LR,SqBiTree<char> &c);
};
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -