Programmation en langage c++
salut a tous voici mon projet en c++ quelqu'un peut me donner des idées
Crée en c++ une classe permettant d'implementer un graphe selon le model suivant:
Code:
1 2 3 4 5 6 7 8 9 10
| class graph
{
private :
int rechercher_indice_sommet(string id);
public:
int creer_sommet(string id);
int creer_arret(string u, string v,double pds=0);
in enregistrer(string fichier);
int ouvrir(string fichier);
}; |
sachant que les methodes creer_sommeet ;creer_arret doivent permettre de créer respectivement les sommets et les arêtes (pondérées ou non) de toute instance de cette classe. La méthode rechercher_indice_sommet permettant de vérifier l'existence d'un sommet et de retrouver son indice le cas échéant. La méthode enregistrer doit permettre de sauvegarder les éléments du graphe (sommets + arêtes) dans un fichier texte ou binaire. Tandis que la méthode enregistrer permettra quant à elle, de recréer les éléments d'un graphe à partir du contenu du fichier fourni en paramètre
Selon votre groupe vous devez ajouter à la classe Graph une méthode court chemin dijkstra(string u, string v ) ;court_chemin_bellman_Ford (string u, string v), court_chemin_floyd warshall(string u, string v), permettant de rechercher respectivement le plus court chemin entre deux sommets selon les algorithmes de Dijkstra, de Bellman-Ford et de Floyd-Warshall. Ne pas oublier d'implémenter également les méthodes parcours_profondeur() et parcours largeur () permettant de parcourir le graphe respectivement en profondeur*et*en*largeur.