Bonjour à tous,
J'ai besoin de coder un graphe avec une matrice.
J'ai deux classes Noeud.h et Lien.h
Les cases de la matrice correspondent à des objets de type Lien. Chaque case correspond donc à un lien entre deux nœuds.
Pour ce faire, j'ai essayé avec tab des pointeurs Lien ** tab mais j'arrive pas à terminer cet essai car je ne connais pas le nombre de lignes et de colonnes. En fait, ces nombres correspondent au nombre des nœuds dans le graphe qui est n'est pas stable. Donc, est ce que je peux utiliser vector< vector<Arc> > pour résoudre ce problème.
Le code de la classe Graphe que je veux le modifier s'il ne convient pas.
Code :
- #ifndef Graphe_H
- #define Graphe_H
- #include<iostream>
- #include<string>
- #include <vector>
- #include "Noeud.h"
- #include "Lien.h"
- using namespace std;
- class Graphe
- {
- private :
- vector<Noeud*> vecNoeuds;
- public :
- Lien** matLiens;
- string nom;
- Graphe(string);
- Graphe(const Graphe& );
- void ajouterNoeud(Noeud* n);
- void ajouterLien(Noeud NoeudDépart,Noeud NoeudArrivé,string attr);
- void afficher();
- ~Graphe();
- };
- #endif
|
Remarque :
je suis entrain de coder un problème d'optimisation ou le temps d'exécution est indispensable.
Merci d'avance.