uoc.ei.tads
Class ArbolBinarioEncadenadoImpl.NodoArbol<EN>

java.lang.Object
  extended by uoc.ei.tads.ArbolBinarioEncadenadoImpl.NodoArbol<EN>
All Implemented Interfaces:
java.io.Serializable, Posicion<EN>
Direct Known Subclasses:
ArbolAVL.NodoAVL
Enclosing class:
ArbolBinarioEncadenadoImpl<E>

protected static class ArbolBinarioEncadenadoImpl.NodoArbol<EN>
extends java.lang.Object
implements Posicion<EN>

Clase que implementa un nodo con dos encadenamientos a nodo. Solo facilita las operaciones básicas: constructores y accesores de lectura y de escritura. Puede almacenar cualquiera elemento (Object).

See Also:
Serialized Form

Field Summary
protected  EN elemento
          Elemento contenido en el nodo.
protected  ArbolBinarioEncadenadoImpl.NodoArbol<EN> hijoDerecho
          Encadenamiento al hijo derecho.
protected  ArbolBinarioEncadenadoImpl.NodoArbol<EN> hijoIzquierdo
          Encadenamiento al hijo izquierdo.
 
Constructor Summary
ArbolBinarioEncadenadoImpl.NodoArbol()
          Constructor sin parámetros.
ArbolBinarioEncadenadoImpl.NodoArbol(ArbolBinarioEncadenadoImpl.NodoArbol<EN> hi, EN elem, ArbolBinarioEncadenadoImpl.NodoArbol<EN> hd)
          Constructor con tres parámetros.
ArbolBinarioEncadenadoImpl.NodoArbol(EN elem)
          Constructor con un parámetro.
 
Method Summary
 EN getElem()
          Accesor de lectura del elemento contenido al nodo.
 ArbolBinarioEncadenadoImpl.NodoArbol<EN> getHijoDerecho()
          Accesor de lectura del hijo derecho.
 ArbolBinarioEncadenadoImpl.NodoArbol<EN> getHijoIzquierdo()
          Accesor de lectura del hijo izquierdo.
 int numNodos()
          Cuenta recursivamente los nodos que contiene un arbol o subárbol.
 void setElem(EN elem)
          Accesor de escritura del valor contenido al nodo.
 void setHijoDerecho(ArbolBinarioEncadenadoImpl.NodoArbol<EN> hd)
          Accesor de escritura del hijo derecho.
 void setHijoIzquierdo(ArbolBinarioEncadenadoImpl.NodoArbol<EN> hi)
          Accessor d'escriptura del hijo esquerre.
 java.lang.String toString()
          Método que define la conversión del objeto a String por facilitar la depuración del código.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

elemento

protected EN elemento
Elemento contenido en el nodo.


hijoIzquierdo

protected ArbolBinarioEncadenadoImpl.NodoArbol<EN> hijoIzquierdo
Encadenamiento al hijo izquierdo.


hijoDerecho

protected ArbolBinarioEncadenadoImpl.NodoArbol<EN> hijoDerecho
Encadenamiento al hijo derecho.

Constructor Detail

ArbolBinarioEncadenadoImpl.NodoArbol

public ArbolBinarioEncadenadoImpl.NodoArbol()
Constructor sin parámetros. Da valor nulo a los atributos.


ArbolBinarioEncadenadoImpl.NodoArbol

public ArbolBinarioEncadenadoImpl.NodoArbol(EN elem)
Constructor con un parámetro. Asigna el valor recibido al elemento del nodo padre y da valor null a las posiciones hijas.

Parameters:
elem - valor del elemento que debe ir al nodo padre

ArbolBinarioEncadenadoImpl.NodoArbol

public ArbolBinarioEncadenadoImpl.NodoArbol(ArbolBinarioEncadenadoImpl.NodoArbol<EN> hi,
                                            EN elem,
                                            ArbolBinarioEncadenadoImpl.NodoArbol<EN> hd)
Constructor con tres parámetros.

Parameters:
hi - hijo izquierdo
elem - valor del elemento contenido en el nodo padre
hd - hijo derecho
Method Detail

numNodos

public int numNodos()
Cuenta recursivamente los nodos que contiene un arbol o subárbol.

Returns:
cero si está vacío; sino retorna el número de nodos del subárbol izquierdo más el del subárbol derecho más uno (raíz)

setElem

public void setElem(EN elem)
Accesor de escritura del valor contenido al nodo.

Parameters:
elem - nuevo valor del elemento contenido al nodo

getElem

public EN getElem()
Accesor de lectura del elemento contenido al nodo.

Specified by:
getElem in interface Posicion<EN>
Returns:
elemento contenido al nodo

setHijoIzquierdo

public void setHijoIzquierdo(ArbolBinarioEncadenadoImpl.NodoArbol<EN> hi)
Accessor d'escriptura del hijo esquerre.

Parameters:
hi - valor per al hijo esquerre

getHijoIzquierdo

public ArbolBinarioEncadenadoImpl.NodoArbol<EN> getHijoIzquierdo()
Accesor de lectura del hijo izquierdo.

Returns:
hijo izquierdo

setHijoDerecho

public void setHijoDerecho(ArbolBinarioEncadenadoImpl.NodoArbol<EN> hd)
Accesor de escritura del hijo derecho.

Parameters:
hd - valor para el hijo derecho

getHijoDerecho

public ArbolBinarioEncadenadoImpl.NodoArbol<EN> getHijoDerecho()
Accesor de lectura del hijo derecho.

Returns:
hijo derecho

toString

public java.lang.String toString()
Método que define la conversión del objeto a String por facilitar la depuración del código. Delega en el método toString() del elemento almacenado en la posición.

Overrides:
toString in class java.lang.Object
Returns:
cadena de caracteres representativa del elemento.