vrecko
virtual reality framework
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
BinomialHeap< _NodeClass, _keyType > Class Template Reference

#include <Heaps.h>

Inheritance diagram for BinomialHeap< _NodeClass, _keyType >:
GenericHeap< _NodeClass, _keyType >

Classes

class  BinomialHeapNode
 

Public Member Functions

 BinomialHeap (void)
 
 ~BinomialHeap (void)
 
virtual void Insert (_NodeClass *node)
 
virtual _NodeClass * ExtractMin (void)
 
virtual void DecreaseKey (_NodeClass *node, _keyType value)
 
virtual _NodeClass * GetMin (void)
 
virtual _NodeClass * Delete (_NodeClass *node)
 
virtual void Union (BinomialHeap< _NodeClass, _keyType > *heap)
 
virtual void FreeAllNodes ()
 
virtual bool IsEmpty ()
 

Protected Member Functions

void Link (_NodeClass *root1, _NodeClass *root2)
 
void Merge (BinomialHeap< _NodeClass, _keyType > *heap)
 
void FreeNodeSimple (_NodeClass *node)
 

Protected Attributes

_NodeClass * head
 

Constructor & Destructor Documentation

template<class _NodeClass, class _keyType>
BinomialHeap< _NodeClass, _keyType >::BinomialHeap ( void  )
template<class _NodeClass, class _keyType>
BinomialHeap< _NodeClass, _keyType >::~BinomialHeap ( void  )

Member Function Documentation

template<class _NodeClass, class _keyType>
virtual void BinomialHeap< _NodeClass, _keyType >::DecreaseKey ( _NodeClass *  node,
_keyType  value 
)
virtual
template<class _NodeClass, class _keyType>
virtual _NodeClass* BinomialHeap< _NodeClass, _keyType >::Delete ( _NodeClass *  node)
virtual
template<class _NodeClass, class _keyType>
virtual _NodeClass* BinomialHeap< _NodeClass, _keyType >::ExtractMin ( void  )
virtual
template<class _NodeClass, class _keyType>
virtual void BinomialHeap< _NodeClass, _keyType >::FreeAllNodes ( )
virtual
template<class _NodeClass, class _keyType>
void BinomialHeap< _NodeClass, _keyType >::FreeNodeSimple ( _NodeClass *  node)
protected
template<class _NodeClass, class _keyType>
virtual _NodeClass* BinomialHeap< _NodeClass, _keyType >::GetMin ( void  )
virtual
template<class _NodeClass, class _keyType>
virtual void BinomialHeap< _NodeClass, _keyType >::Insert ( _NodeClass *  node)
virtual
template<class _NodeClass, class _keyType>
virtual bool BinomialHeap< _NodeClass, _keyType >::IsEmpty ( )
inlinevirtual
template<class _NodeClass, class _keyType>
void BinomialHeap< _NodeClass, _keyType >::Link ( _NodeClass *  root1,
_NodeClass *  root2 
)
inlineprotected
template<class _NodeClass, class _keyType>
void BinomialHeap< _NodeClass, _keyType >::Merge ( BinomialHeap< _NodeClass, _keyType > *  heap)
protected
template<class _NodeClass, class _keyType>
virtual void BinomialHeap< _NodeClass, _keyType >::Union ( BinomialHeap< _NodeClass, _keyType > *  heap)
virtual

Member Data Documentation

template<class _NodeClass, class _keyType>
_NodeClass* BinomialHeap< _NodeClass, _keyType >::head
protected

The documentation for this class was generated from the following file: