avl.h

来自「这是一个开放源代码的与WINNT/WIN2K/WIN2003兼容的操作系统」· C头文件 代码 · 共 31 行

H
31
字号
/*
 * COPYRIGHT:       See COPYING in the top level directory
 * PROJECT:         ReactOS System Libraries
 * FILE:            lib/rtl/austin/avl.h
 * PURPOSE:         Run-Time Libary Header (interface to austin AVL tree)
 * PROGRAMMER:      arty
 */

#ifndef _REACTOS_RTL_LIB_AUSTIN_AVL_H
#define _REACTOS_RTL_LIB_AUSTIN_AVL_H

#define avl_data(x) ((void*)(&(x)[1]))

void avl_init(PRTL_AVL_TABLE table);
void avl_deinit(PRTL_AVL_TABLE table);
void avl_insert_node(PRTL_AVL_TABLE table, PRTL_BALANCED_LINKS node);
void avl_delete_node(PRTL_AVL_TABLE table, PRTL_BALANCED_LINKS node);
int  avl_is_nil(PRTL_AVL_TABLE table, PRTL_BALANCED_LINKS node);
PRTL_BALANCED_LINKS avl_first(PRTL_AVL_TABLE table);
PRTL_BALANCED_LINKS avl_last(PRTL_AVL_TABLE table);
PRTL_BALANCED_LINKS avl_next(PRTL_AVL_TABLE table, PRTL_BALANCED_LINKS node);

int  avl_search
(PRTL_AVL_TABLE table, 
 PVOID _key, 
 PRTL_BALANCED_LINKS node, 
 PRTL_BALANCED_LINKS *where);


#endif/*_REACTOS_RTL_LIB_AUSTIN_AVL_H*/

⌨️ 快捷键说明

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