Métodos públicos | |
Gen_Rb_Tree () | |
Instancia un árbol rojo-negro. | |
Node *& | getRoot () |
Obtiene un puntero a la raíz del árbol. | |
Node * | insert (Node *p) |
Inserta el nodo p en el árbol rojo-negro. Si la clave de p no está contenida en el árbol, entonces el nodo es insertado y se retorna el puntero a p. De lo contrario no ocurre la inserción y se retorna NULL. | |
Node * | remove (const Key &key) |
Elimina el nodo contentivo de la clave key. Si la clave se encuentra en el árbol, entonces se elimina el nodo que la contiene y se retorna su dirección. De lo contrario se retorna NULL. | |
Node * | search (const Key &key) |
Busca un nodo con clave key. Retorna un puntero al nodo contentivo de key si éste se encuentra en el árbol; NULL de lo contrario. | |
virtual | ~Gen_Rb_Tree () |
Destruye un árbol rojo-negro. |
Esta clase es genérica en el sentido de que maneja nodos con o sin destructor virtual. No está destinada a usarse normalmente. En su lugar, use las clases derivadas Rb_Tree o Rb_Tree_Vtl.
NodeType | el tipo de nodo entre RbNode y RbNodeVtl (no están documentados). | |
Key | el tipo de clave que albergan los nodos del árbol. | |
Compare | clase de comparación entre las claves. |
Definición en la línea 76 del archivo tpl_rb_tree.H.