⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 c6-1.h

📁 该程序实现了对二叉树的各种遍历
💻 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 + -