Graphes
IPA - TD2
- Récupérer les fichiers des interfaces GrapheOriente et Arc.
Ecrire la classe ArcImpl qui implémente Arc.
Récupérer le fichier de la classe GrapheOrienteImpl et le
compléter. Il est
recommandé de terminer par les méthodes arcsSortants,
arcsEntrants, puis arcs.
- Modifier GrapheOriente, Arc et GrapheOrienteImpl pour
paramétrer le type des sommets en utilisant la
généricité.
- Proposer deux interfaces GrapheNonOriente et Arete pour
représenter un graphe non orienté.
Donner une implémententation de ces deux interfaces. Pour
implémenter GrapheNonOriente, on utilisera une instance de
GrapheOriente dont les arcs sont des instances de la classe ArcArete. Attention
à ne pas retourner plusieurs fois la même arête, en
particulier dans le cas d'une boucle.
- On souhaite maintenant avoir des graphes (non orientés)
dessinables.
- Proposer une solution utilisant l'héritage. Les sommets
seront des instances de Dessin. Les
arêtes seront dessinées grâce à une instance
de Ligne. Un graphe dessinable sera une
instance de l'interface GrapheDessinable.
- Proposer une solution utilisant la décoration. Les
instances de Dessin et de Ligne seront fournies à
l'instanciation du décorateur.