Treap< KEY, VALUE > Class Template Reference

#include <treap.h>

List of all members.

Classes

class  Node

Public Member Functions

 Treap (void)
 ~Treap (void)
Node * lookup (KEY key) const
Node * lookupGreater (KEY key) const
void insert (Node *n, KEY key, VALUE value, unsigned int priority)
Node * remove (Node *node)
void print (void) const
void reallyPrint (Node *node) const

Private Member Functions

 Treap (const Treap &treap)
Treap & operator= (const Treap &treap)
int heapProperty (Node *node, int lbound) const
int bstProperty (Node *node, int lbound, int ubound) const
void deleteTreap (Node *node)
Node * lookup_ (KEY key) const
Node * lookupGreater_ (KEY key) const
Node * lookupGeq (KEY key, Node *root) const
void rotateLeft (Node *node)
void rotateRight (Node *node)

Private Attributes

Node * root

template<class KEY, class VALUE>
class Treap< KEY, VALUE >


Constructor & Destructor Documentation

template<class KEY , class VALUE >
Treap< KEY, VALUE >::Treap ( void   )  [inline]
template<class KEY , class VALUE >
Treap< KEY, VALUE >::~Treap ( void   )  [inline]
template<class KEY, class VALUE>
Treap< KEY, VALUE >::Treap ( const Treap< KEY, VALUE > &  treap  )  [inline, private]

Member Function Documentation

template<class KEY , class VALUE >
int Treap< KEY, VALUE >::bstProperty ( Node *  node,
int  lbound,
int  ubound 
) const [inline, private]
template<class KEY , class VALUE >
void Treap< KEY, VALUE >::deleteTreap ( Node *  node  )  [inline, private]
template<class KEY , class VALUE >
int Treap< KEY, VALUE >::heapProperty ( Node *  node,
int  lbound 
) const [inline, private]
template<class KEY, class VALUE>
void Treap< KEY, VALUE >::insert ( Node *  n,
KEY  key,
VALUE  value,
unsigned int  priority 
)
template<class KEY, class VALUE>
Node* Treap< KEY, VALUE >::lookup ( KEY  key  )  const [inline]
template<class KEY, class VALUE >
Treap< KEY, VALUE >::Node * Treap< KEY, VALUE >::lookup_ ( KEY  key  )  const [inline, private]
template<class KEY, class VALUE >
Treap< KEY, VALUE >::Node * Treap< KEY, VALUE >::lookupGeq ( KEY  key,
Node *  root 
) const [inline, private]
template<class KEY, class VALUE>
Node* Treap< KEY, VALUE >::lookupGreater ( KEY  key  )  const [inline]
template<class KEY, class VALUE >
Treap< KEY, VALUE >::Node * Treap< KEY, VALUE >::lookupGreater_ ( KEY  key  )  const [inline, private]
template<class KEY, class VALUE>
Treap& Treap< KEY, VALUE >::operator= ( const Treap< KEY, VALUE > &  treap  )  [inline, private]
template<class KEY, class VALUE>
void Treap< KEY, VALUE >::print ( void   )  const [inline]
template<class KEY, class VALUE>
void Treap< KEY, VALUE >::reallyPrint ( Node *  node  )  const [inline]
template<class KEY, class VALUE>
Node* Treap< KEY, VALUE >::remove ( Node *  node  )  [inline]
template<class KEY , class VALUE >
void Treap< KEY, VALUE >::rotateLeft ( Node *  node  )  [inline, private]
template<class KEY , class VALUE >
void Treap< KEY, VALUE >::rotateRight ( Node *  node  )  [inline, private]

Member Data Documentation

template<class KEY, class VALUE>
Node* Treap< KEY, VALUE >::root [private]

The documentation for this class was generated from the following file:
Generated on Tue Aug 2 11:51:29 2011 for Galois by  doxygen 1.6.3