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

📄 trid_tree.h

📁 完全由C语言实现的图的相关操作
💻 H
字号:
#ifndef TRID_TREE_H
#define TRID_TREE_H
#include "head.h" 
typedef struct node
{
  int num; //标志是否出现, -1表示不存在 ,正数表示出现的位置
  struct node* child[26]; //共26个字母
} node; 

typedef struct trid_tree
{
  int vexnum ; //出现的顶点总数
  struct node* root; //字母树的根 
  
}trid_tree;

int initNode(node* t);
//初始化结点
Status init_trid_tree(trid_tree* T);
//对字母树进行初始化
int insert(trid_tree* T,char* word);
//初始条件:字母树T存在,要插入的字符串存在
//操作结果:判断word是否已经在T中,在返回出现的位置,不在T中插入word,且返回出现的位置
int delete_node(trid_tree* T,char* word);
//初始条件:存在一棵字母树的根是t,和要删除的单词word
//操作结果:结点内存没有释放,就是把num值改为-1
void adjust_num(node* t,int xiabiao);
//初始条件:存在一棵字母树的根是t,和一个整数为xiabiao
//操作结果:把树t中所有t的num值大于xiabiao的,都分别减1 
int find(trid_tree* T,char* word);
//初始条件:字母树T存在,要查找的字符串存在
//操作结果:判断word是否已经在T中,是返回在的位置,不在返回-1 
void Traverse(node* t);
//初始条件:存在一棵字母树的根是t
//操作结果:深度优先遍历整棵字母树,输出num的值

Status destoryTree(trid_tree* T);
//初始条件:存在一棵字母树T,
//操作结果:销毁T这棵树
void delete_Tree(node* T);
//初始条件:存在一棵字母树的根是T
//操作结果:销毁了以T为根的那棵字母树
#endif 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -