cheshirekow
v0.1.0
|
implements red black trees from CLRS More...
#include <mpblocks/redblack/iterator.h>
Public Types | |
typedef Traits::Key | Key |
typedef Traits::NodeOps | NodeOps |
typedef Traits::NodeRef | NodeRef |
Public Member Functions | |
Iterator< Traits > | begin () |
void | clear () |
Iterator< Traits > | end () |
void | insert (NodeRef z) |
void | insertFixup (NodeRef z) |
auto | key (NodeRef N) -> decltype(m_ops.key(N)) |
void | leftRotate (NodeRef x) |
NodeRef | remove (NodeRef z) |
void | removeFixup (NodeRef x) |
void | rightRotate (NodeRef x) |
size_t | size () |
Tree (NodeRef Nil) | |
NodeRef | treeMaximum (NodeRef x) |
CLRS 12.2 page 258. More... | |
NodeRef | treeMinimum (NodeRef x) |
CLRS 12.2 page 258. More... | |
NodeRef | treePredecessor (NodeRef x) |
CLRS 12.2 page 259. More... | |
NodeRef | treeSuccessor (NodeRef x) |
CLRS 12.2 page 259. More... | |
Static Public Attributes | |
static const Color | BLACK = Color::BLACK |
static const Color | RED = Color::RED |
Private Member Functions | |
Color & | color (NodeRef N) |
NodeRef & | left (NodeRef N) |
NodeRef & | p (NodeRef N) |
NodeRef & | right (NodeRef N) |
void | swapKey (NodeRef a, NodeRef b) |
Private Attributes | |
NodeOps | m_ops |
size_t | m_size |
NodeRef | Nil |
NodeRef | root |
implements red black trees from CLRS
Definition at line 34 of file iterator.h.
typedef Traits::Key mpblocks::redblack::Tree< Traits >::Key |
typedef Traits::NodeOps mpblocks::redblack::Tree< Traits >::NodeOps |
typedef Traits::NodeRef mpblocks::redblack::Tree< Traits >::NodeRef |
|
inline |
|
inline |
|
inline |
|
inlineprivate |
|
inline |
|
inline |
|
inline |
|
inline |
|
inlineprivate |
|
inline |
|
inlineprivate |
|
inline |
|
inline |
|
inlineprivate |
|
inline |
|
inline |
|
inlineprivate |
|
inline |
|
inline |
|
inline |
|
inline |
|
static |
|
private |
|
private |
|
private |
|
static |
|
private |