acl  3.5.3.0
acl_btree.h 文件参考
#include "acl_define.h"
+ acl_btree.h 的引用(Include)关系图:
+ 此图展示该文件直接或间接的被哪些文件引用了:

浏览源代码.

类型定义

typedef struct ACL_BTREE ACL_BTREE
 

函数

ACL_API ACL_BTREEacl_btree_create (void)
 
ACL_API int acl_btree_destroy (ACL_BTREE *tree)
 
ACL_API void * acl_btree_find (ACL_BTREE *tree, unsigned int key)
 
ACL_API int acl_btree_add (ACL_BTREE *tree, unsigned int key, void *data)
 
ACL_API void * acl_btree_remove (ACL_BTREE *tree, unsigned int key)
 
ACL_API int acl_btree_get_min_key (ACL_BTREE *tree, unsigned int *key)
 
ACL_API int acl_btree_get_max_key (ACL_BTREE *tree, unsigned int *key)
 
ACL_API int acl_btree_get_next_key (ACL_BTREE *tree, unsigned int cur_key, unsigned int *next_key)
 
ACL_API int acl_btree_depth (ACL_BTREE *tree)
 
ACL_API void acl_btree_dump (ACL_BTREE *b)
 

类型定义说明

◆ ACL_BTREE

typedef struct ACL_BTREE ACL_BTREE

二叉树结构类型定义

在文件 acl_btree.h13 行定义.

函数说明

◆ acl_btree_add()

ACL_API int acl_btree_add ( ACL_BTREE tree,
unsigned int  key,
void *  data 
)

向二叉树中添加

参数
tree{ACL_BTREE*} 二叉树对象
key{unsigned int} 键
data{void*} 动态对象

◆ acl_btree_create()

ACL_API ACL_BTREE* acl_btree_create ( void  )

创建一个二叉树对象

返回
{ACL_BTREE*} 新创建的二叉树对象

◆ acl_btree_depth()

ACL_API int acl_btree_depth ( ACL_BTREE tree)

计算当前二叉树的深度

参数
tree{ACL_BTREE*} 二叉树对象
返回
{int} 二叉树的深度

◆ acl_btree_destroy()

ACL_API int acl_btree_destroy ( ACL_BTREE tree)

释放一个二叉树对象

参数
tree{ACL_BTREE*} 二叉树对象
返回
{int} 0: 成功; -1: 失败

◆ acl_btree_dump()

ACL_API void acl_btree_dump ( ACL_BTREE b)

◆ acl_btree_find()

ACL_API void* acl_btree_find ( ACL_BTREE tree,
unsigned int  key 
)

从二叉树中查询

参数
tree{ACL_BTREE*} 二叉树对象
key{unsigned int} 查询键
返回
{void*} 查询结果

◆ acl_btree_get_max_key()

ACL_API int acl_btree_get_max_key ( ACL_BTREE tree,
unsigned int *  key 
)

返回二叉树中最大的键

参数
tree{ACL_BTREE*} 二叉树对象
key{unsigned int*} 键指针,存储结果,不能为空
返回
{int} 0: 表示找到最大键; -1: 表示出错或未找到最大键

◆ acl_btree_get_min_key()

ACL_API int acl_btree_get_min_key ( ACL_BTREE tree,
unsigned int *  key 
)

返回二叉树中最小的键

参数
tree{ACL_BTREE*} 二叉树对象
key{unsigned int*} 键指针,存储结果,不能为空
返回
{int} 0: 表示找到最小键; -1: 表示出错或未找到最小键

◆ acl_btree_get_next_key()

ACL_API int acl_btree_get_next_key ( ACL_BTREE tree,
unsigned int  cur_key,
unsigned int *  next_key 
)

由给定键,返回其在二叉树中的下一个邻近键

参数
tree{ACL_BTREE*} 二叉树对象
cur_key{unsigned int} 当前给定键
next_key{unsigned int*} 存储结果键的指针地址
返回
{int} 0: 表示找到; -1: 表示出错或未找到

◆ acl_btree_remove()

ACL_API void* acl_btree_remove ( ACL_BTREE tree,
unsigned int  key 
)

从二叉树中删除

参数
tree{ACL_BTREE*} 二叉树对象
key{unsigned int} 键
返回
{void*} 被删除的动态对象地址, 如果不存在则返回NULL