uoc.ei.tads
Class ArbreBinari.RecorregutPreordre<E>

java.lang.Object
  extended by uoc.ei.tads.ArbreBinari.RecorregutOrdreBasic<E>
      extended by uoc.ei.tads.ArbreBinari.RecorregutPreordre<E>
All Implemented Interfaces:
java.io.Serializable, Recorregut<E>
Enclosing class:
ArbreBinari<E>

protected static class ArbreBinari.RecorregutPreordre<E>
extends ArbreBinari.RecorregutOrdreBasic<E>

Classe que proporciona un recorregut de les posicions. Basada en el pattern Iterator, soporta múltiples recorreguts simultanis i independents del contenidor. És sensible a eventuals alteracions de l'estructura de posicions.

See Also:
Recorregut.hiHaSeguent(), Recorregut.seguent(), Serialized Form

Field Summary
 
Fields inherited from class uoc.ei.tads.ArbreBinari.RecorregutOrdreBasic
arbre, pila
 
Constructor Summary
ArbreBinari.RecorregutPreordre(ArbreBinari<E> arbre)
          Constructor.
 
Method Summary
protected  void empilaDescendentsAmbMenysPrioritat(Posicio<E> pare)
          En el cas del recorregut preordre, els descendents amb menys prioritat que un node són els seus dos fills (i a la vegada els descendents d'aquests).
protected  void empilaDescendentsAmbMesPrioritat(Posicio<E> pare)
          En el cas del recorregut preordre, donat un node, aquest sempre apareixerà abans que els els seus descendents en el recorregut, per tant, un node no té descendents amb més prioritat que ell.
 
Methods inherited from class uoc.ei.tads.ArbreBinari.RecorregutOrdreBasic
hiHaSeguent, seguent
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ArbreBinari.RecorregutPreordre

public ArbreBinari.RecorregutPreordre(ArbreBinari<E> arbre)
Constructor.

Parameters:
arbre - L'arbre a recórrer.
Method Detail

empilaDescendentsAmbMesPrioritat

protected void empilaDescendentsAmbMesPrioritat(Posicio<E> pare)
En el cas del recorregut preordre, donat un node, aquest sempre apareixerà abans que els els seus descendents en el recorregut, per tant, un node no té descendents amb més prioritat que ell.

Specified by:
empilaDescendentsAmbMesPrioritat in class ArbreBinari.RecorregutOrdreBasic<E>

empilaDescendentsAmbMenysPrioritat

protected void empilaDescendentsAmbMenysPrioritat(Posicio<E> pare)
En el cas del recorregut preordre, els descendents amb menys prioritat que un node són els seus dos fills (i a la vegada els descendents d'aquests). En tenim prou amb empilar els dos fills, doncs posteriorment quan arribem en el recorregut a aquests fills ja els tractarem i ja tractarem els seus fills adequadament.

Specified by:
empilaDescendentsAmbMenysPrioritat in class ArbreBinari.RecorregutOrdreBasic<E>