Graphviz  2.41.20170921.2350
Data Structures | Typedefs | Functions
red_black_tree.h File Reference
#include "misc.h"
#include "stack.h"
Include dependency graph for red_black_tree.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  rb_red_blk_node
 
struct  rb_red_blk_tree
 

Typedefs

typedef struct rb_red_blk_node rb_red_blk_node
 
typedef struct rb_red_blk_tree rb_red_blk_tree
 

Functions

rb_red_blk_treeRBTreeCreate (int(*CompFunc)(const void *, const void *), void(*DestFunc)(void *), void(*InfoDestFunc)(void *), void(*PrintFunc)(const void *), void(*PrintInfo)(void *))
 
rb_red_blk_nodeRBTreeInsert (rb_red_blk_tree *, void *key, void *info)
 
void RBTreePrint (rb_red_blk_tree *)
 
void RBDelete (rb_red_blk_tree *, rb_red_blk_node *)
 
void RBTreeDestroy (rb_red_blk_tree *)
 
rb_red_blk_nodeTreePredecessor (rb_red_blk_tree *, rb_red_blk_node *)
 
rb_red_blk_nodeTreeSuccessor (rb_red_blk_tree *, rb_red_blk_node *)
 
rb_red_blk_nodeRBExactQuery (rb_red_blk_tree *, void *)
 
stk_stackRBEnumerate (rb_red_blk_tree *tree, void *low, void *high)
 
void NullFunction (void *)
 

Typedef Documentation

Function Documentation

void NullFunction ( void *  )

Definition at line 72 of file misc.c.

void RBDelete ( rb_red_blk_tree ,
rb_red_blk_node  
)
stk_stack* RBEnumerate ( rb_red_blk_tree tree,
void *  low,
void *  high 
)
rb_red_blk_node* RBExactQuery ( rb_red_blk_tree ,
void *   
)
rb_red_blk_tree* RBTreeCreate ( int(*)(const void *, const void *)  CompFunc,
void(*)(void *)  DestFunc,
void(*)(void *)  InfoDestFunc,
void(*)(const void *)  PrintFunc,
void(*)(void *)  PrintInfo 
)
void RBTreeDestroy ( rb_red_blk_tree )

Definition at line 446 of file red_black_tree.c.

References rb_red_blk_node::left, rb_red_blk_tree::nil, rb_red_blk_tree::root, and TreeDestHelper().

Referenced by main().

rb_red_blk_node* RBTreeInsert ( rb_red_blk_tree ,
void *  key,
void *  info 
)
void RBTreePrint ( rb_red_blk_tree )

Definition at line 468 of file red_black_tree.c.

References InorderTreePrint(), rb_red_blk_node::left, and rb_red_blk_tree::root.

Referenced by main().

rb_red_blk_node* TreePredecessor ( rb_red_blk_tree ,
rb_red_blk_node  
)
rb_red_blk_node* TreeSuccessor ( rb_red_blk_tree ,
rb_red_blk_node  
)