📄 btree.h
字号:
#define TRUE 1
#define FALSE 0
#define OK 1
#define ERROR 0
#define OVERFLOW -2
#define STACK_Init_Size 100
#define StackIncrement 10
#define MAXSIZE2 6
#define MAXSIZE1 30
typedef char ElemType;
typedef struct BitNode{
ElemType data;
struct BitNode *lchild,*rchild;
}BitNode,*BiTree;
typedef struct{
unsigned int weight;
unsigned int parent,lchild,rchild;
}HtNode,*HuffmanTree;
typedef char **HuffmanCode;
void InitBiTree(BiTree &T);//初始化二叉树,即把树根指针置空
void CreateBiTree(BiTree &T,char *a);
//根据a所指向的二叉树广义表字符串建立对应的存储结构
int BiTreeEmpty(BiTree &T);//检查二叉树是否为空
int PreOrder(BiTree T);//先序输出二叉树
int InOrder(BiTree T);//中序输出二叉树
int PostOrder(BiTree T);//后序输出二叉树
void TrarverseBiTree(BiTree T);//选择一种遍历次序输出二叉树中的所有结点
int BiTreeDepth(BiTree T);//求二叉树的深度
int BiTreeCount(BiTree T);//求二叉树中所有结点数
void PrintBiTree(BiTree T);//输出二叉树的广义表表示
void MenuSelect(BiTree T);//二叉树菜单选择
int Search(char ino[],char c);//在中序序列中查询
BiTree CrtBt(char pre[],char ino[],int ps,int is,int n);
//由两个序列构造二叉链表
void menuCrtBt();
BiTree Createhuffman(int a[],int n);//建立哈夫曼树
void Huffmancoding(BiTree T,int len);//对各字符进行哈夫曼编码
int PreOrderha(BiTree T);//先序输出哈夫曼树
int InOrderha(BiTree T);//中序输出哈夫曼树
int PostOrderha(BiTree T);//后序输出哈夫曼树
void PrintBiTreeha(BiTree T);//输出哈夫曼树的广义表表示
void huffmenu();
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -