RBTREE(3) | Library Functions Manual | RBTREE(3) |
void
rb_tree_init(rb_tree_t *rbt, const rb_tree_ops_t *ops);
void *
rb_tree_insert_node(rb_tree_t *rbt, void *rb);
void
rb_tree_remove_node(rb_tree_t *rbt, void *rb);
void *
rb_tree_find_node(rb_tree_t *rbt, const void *key);
void *
rb_tree_find_node_geq(rb_tree_t *rbt, const void *key);
void *
rb_tree_find_node_leq(rb_tree_t *rbt, const void *key);
void *
rb_tree_iterate(rb_tree_t *rbt, void *rb, unsigned int direction);
void *
RB_TREE_MIN(rb_tree_t *rbt);
void *
RB_TREE_MAX(rb_tree_t *rbt);
RB_TREE_FOREACH(void *rb, rb_tree_t *rbt);
RB_TREE_FOREACH_REVERSE(void *rb, rb_tree_t *rbt);
Every operation on a red-black tree is bounded as O(lg n). The maximum height of a red-black tree is 2lg (n+1).
rbto_compare_nodes_fn rbto_compare_nodes; rbto_compare_key_fn rbto_compare_key; size_t rbto_node_offset; void *rbto_context;
If direction is RB_DIR_RIGHT, return the node in the tree rbt immediately following the node rb or, if rb is NULL, return the last node in rbt or, if the tree is empty, return NULL.
provos@citi.umich.edu> wrote the tree(3) manual page. Portions of this page derive from that page.
<March 13, 2013 | NetBSD 7.2 |