Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

représentation d'un graphe

2 réponses
Avatar
pr.nm
J'ai appris dans mon cours d'informatique à représenter un graphe
comme un tableau de liste de successeurs. Mais il me semble que ceci
nécessite de connaître le nombre de sommets du graphe.
Pour représenter un graphe d'exploration, j'ai alors pensé à :

class Graphe{
int contenu;
ListeGraphe successeurs;
}

class ListeGraphe{
Graphe contenu;
ListeGraphe suivant;
}

Y a-t-il quelque chose de plus propre ? de plus efficace (pour
parcourir le graphe, par exemple) ?
Merci

2 réponses

Avatar
Sébastien Chavance
utilise des ArrayList ou des Vector

Endymion a écrit dans le message :

J'ai appris dans mon cours d'informatique à représenter un graphe
comme un tableau de liste de successeurs. Mais il me semble que ceci
nécessite de connaître le nombre de sommets du graphe.
Pour représenter un graphe d'exploration, j'ai alors pensé à :

class Graphe{
int contenu;
ListeGraphe successeurs;
}

class ListeGraphe{
Graphe contenu;
ListeGraphe suivant;
}

Y a-t-il quelque chose de plus propre ? de plus efficace (pour
parcourir le graphe, par exemple) ?
Merci


Avatar
Olivier Pierrier
Salut,

J'ai appris dans mon cours d'informatique à représenter un graphe
comme un tableau de liste de successeurs. Mais il me semble que ceci
nécessite de connaître le nombre de sommets du graphe.
Pour représenter un graphe d'exploration, j'ai alors pensé à :



Je te conseille plutot ce genre de representation
Ce que tu appelle graphe est un noeud du graphe
-->
class GraphNode
{
private NodeProperties properties; // les proprietes du noeud
private List successors; // list de GraphNodes

public void addSuccessor( GraphNode node ) ...
public boolean removeNode( GraphNode node ) ...

....
}

class Graph
{
private List graphNodes; // l 'ensemble de tes noeuds

....
}

Voila

Olivier
--
______________________________________________
Inxnet GmbH
intelligent software solutions
Tel +49 (0)761/29 69 79-0
Fax +49 (0)761/29 69 79-9