tvouriot.lib.arbres
Class ArbinObj

java.lang.Object
  |
  +--tvouriot.lib.arbres.ArbinObj
Direct Known Subclasses:
ArbinObjCh

public abstract class ArbinObj
extends java.lang.Object

Classe implantant le type abstrait "arbre d'objets".


Constructor Summary
ArbinObj()
           
 
Method Summary
abstract  ArbinObj ad()
          Retourne l'arbre droit de l'arbre courant
abstract  ArbinObj ag()
          Retourne l'arbre gauche de l'arbre courant
abstract  boolean avide()
          Teste si l'arbre est vide
protected abstract  ArbinObj creationArbre(java.lang.Object x)
          Créé un arbre avec une racine
protected abstract  ArbinObj creationArbre(java.lang.Object x, ArbinObj g, ArbinObj d)
          Créé un arbre avec une racine, un arbre gauche et un arbre droit
 boolean estComplet()
          Teste si l'arbre courant est complet
 boolean estFiliforme()
          Teste si l'arbre est filiforme
 boolean estParfait()
          Teste si l'arbre courant est parfait
protected abstract  ArbinObj getArbreVide()
          Retourne un arbre vide
 int hauteur()
          Renvoie la hauteur de l'arbre courant
static void infixer(ArbinObj a)
          Ecrit sur la sortie standart les composants d'un arbre en faisant un parcours infixé
 int nbFeuilles()
          Renvoie le nombre de feuilles de l'arbre courant
 int nbNoeuds()
          Retourne le nombre de noeuds de l'arbre courant
 java.util.Enumeration parcoursInf()
          Utilise une énumération pour récupérer les données de l'arbre courant en faisant un parcours infixé
 tvouriot.lib.arbres.ArbinObj.Parcours parcoursPost()
          Utilise une énumération pour récupérer les données de l'arbre courant en faisant un parcours postfixé
 java.util.Enumeration parcoursPre()
          Utilise une énumération pour récupérer les données de l'arbre courant en faisant un parcours préfixé
 tvouriot.lib.arbres.ArbinObj.Parcours parcoursPreIter()
          Utilise une énumération pour récupérer les données de l'arbre courant en faisant un parcours préfixé (méthode itérative)
static void postfixer(ArbinObj a)
          Ecrit sur la sortie standart les composants d'un arbre en faisant un parcours postfixé
static void prefixer(ArbinObj a)
          Ecrit sur la sortie standart les composants d'un arbre en faisant un parcours préfixé
abstract  java.lang.Object racine()
          Retourne la racine de l'arbre courant
protected abstract  void setArbreVide()
          Transforme l'arbre courant en un arbre vide
 java.lang.String toString()
          Renvoie une représentation sous la forme d'une chaîne de caractères de l'arbre courant
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

ArbinObj

public ArbinObj()
Method Detail

racine

public abstract java.lang.Object racine()
Retourne la racine de l'arbre courant
Returns:
la racine

ag

public abstract ArbinObj ag()
Retourne l'arbre gauche de l'arbre courant
Returns:
l'arbre gauche

ad

public abstract ArbinObj ad()
Retourne l'arbre droit de l'arbre courant
Returns:
l'arbre droit

avide

public abstract boolean avide()
Teste si l'arbre est vide
Returns:
true si l'arbre est vide, false sinon

setArbreVide

protected abstract void setArbreVide()
Transforme l'arbre courant en un arbre vide

getArbreVide

protected abstract ArbinObj getArbreVide()
Retourne un arbre vide
Returns:
arbre vide

creationArbre

protected abstract ArbinObj creationArbre(java.lang.Object x,
                                          ArbinObj g,
                                          ArbinObj d)
Créé un arbre avec une racine, un arbre gauche et un arbre droit
Parameters:
x - racine
g - arbre gauche
d - arbre droit
Returns:
arbre créé

creationArbre

protected abstract ArbinObj creationArbre(java.lang.Object x)
Créé un arbre avec une racine
Parameters:
x - racine
Returns:
arbre créé

hauteur

public int hauteur()
Renvoie la hauteur de l'arbre courant
Returns:
la hauteur

nbFeuilles

public int nbFeuilles()
Renvoie le nombre de feuilles de l'arbre courant
Returns:
le nombre de feuilles

estFiliforme

public boolean estFiliforme()
Teste si l'arbre est filiforme
Returns:
true si l'arbre est filiforme, false sinon

nbNoeuds

public int nbNoeuds()
Retourne le nombre de noeuds de l'arbre courant
Returns:
le nombre de noeuds

toString

public java.lang.String toString()
Renvoie une représentation sous la forme d'une chaîne de caractères de l'arbre courant
Overrides:
toString in class java.lang.Object
Returns:
chaîne de caractères

estComplet

public boolean estComplet()
Teste si l'arbre courant est complet
Returns:
true si l'arbre est complet, false sinon

estParfait

public boolean estParfait()
Teste si l'arbre courant est parfait
Returns:
true si l'arbre est parfait, false sinon

prefixer

public static void prefixer(ArbinObj a)
Ecrit sur la sortie standart les composants d'un arbre en faisant un parcours préfixé
Parameters:
a - arbre à parcourir

infixer

public static void infixer(ArbinObj a)
Ecrit sur la sortie standart les composants d'un arbre en faisant un parcours infixé
Parameters:
a - arbre à parcourir

postfixer

public static void postfixer(ArbinObj a)
Ecrit sur la sortie standart les composants d'un arbre en faisant un parcours postfixé
Parameters:
a - arbre à parcourir

parcoursPre

public java.util.Enumeration parcoursPre()
Utilise une énumération pour récupérer les données de l'arbre courant en faisant un parcours préfixé
Returns:
énumération des données

parcoursInf

public java.util.Enumeration parcoursInf()
Utilise une énumération pour récupérer les données de l'arbre courant en faisant un parcours infixé
Returns:
énumération des données

parcoursPost

public tvouriot.lib.arbres.ArbinObj.Parcours parcoursPost()
Utilise une énumération pour récupérer les données de l'arbre courant en faisant un parcours postfixé
Returns:
énumération des données

parcoursPreIter

public tvouriot.lib.arbres.ArbinObj.Parcours parcoursPreIter()
Utilise une énumération pour récupérer les données de l'arbre courant en faisant un parcours préfixé (méthode itérative)
Returns:
énumération des données