PDA

Visualizza la versione completa : [C++] Classe grafo


tonyno92
04-01-2013, 23:32
Salve a tutti ragazzi
sono giorni che ci perdo la testa ma non riesco ad implementare un grafo orientato
con liste di adiacenze nel quale dovrei implementare l'algoritmo di prim.
Utilizzo come linguaggio il C++ ed ho creato questa classe di tipo grafo.
Ditemi se errata pls.


#include <string>
#include <iostream>
#include <cstdlib>

#define MAX 10
using namespace std;

class GRAFO
{
public :
GRAFO(){id = 0;cnt =0;}
class NODO
{
public :
NODO(){next = NULL;adj=NULL;}
string key;
NODO* next; //Prossimo Nodo Della Lista
NODO* adj; //Lista di Adiacenze
};
int id; //Id Del nodo Corrente
int cnt; // Numero Di Nodi
public:
void new_vertex(string);
void print_vertexs();
};

Raga vi prego aiutatemi.
cortesemente non scrivetemi classi e programmi con template o altre cose complicate , se proprio e necessario spiegatemi cosa accade nelle righe di codice .
Grazie mille per gli aiuti che darete e scusate la mia ignoranza se ho scritto baggianate

MItaly
04-01-2013, 23:51
Indica il linguaggio di programmazione nel titolo (es. [C++], [DELPHI], [PYTHON], ecc.) e una descrizione breve ma significativa del problema trattato nella discussione, evitando epiteti come "urgente", "help", "aiuto", "solo per esperti" o termini scontati come "problema con".
Qui sistemo io, in futuro imposta correttamente il titolo fin da subito (e magari prima di continuare dai un'occhiata al regolamento (http://forum.html.it/forum/showthread.php?s=&threadid=973887)).
:ciauz:

---

In ogni caso non mi molto chiaro quale sia esattamente la richiesta... :stordita:

tonyno92
05-01-2013, 00:10
Ohhh Scusami ma sono registrato da poche ore.
scusami ankora.
cmq devo creare un grafo e non so come fatto L'ADT di un grafo in c++
dopo di che vorrei capire come funziona per poi implementare l'algoritmo di Prim su un problema reale.
Scusa se nn ero stato chiaro

tonyno92
05-01-2013, 14:52
Ragazzi Cortesemente Date Un Occhiata A questa Nuova Classe Che Ho Implementato




class NODO
{
public :NODO(){next = NULL;adj=NULL;}
class ARCHI
{
public: ARCHI(){peso=0;dst=NULL;adj1=NULL;}
public :
int peso;
NODO* dst;
ARCHI* adj1;
};
public:
string key;
NODO *next;
ARCHI *adj;

};

class GRAFO
{
public: GRAFO(){cnt =0;}

public:
NODO *nodi;
int cnt;
public:
void add_adiacente(string );
void initialize();
};



Non Riesco a creare la lista di adiacenze!!! grazie

tonyno92
05-01-2013, 17:01
Ragazzi Dai Perfavore Mi Aiutate ?
Sono riuscito a risolvere solo il problema per inserire i nodi e gli adiacenti con una semplice classe fatto cosi: ma non credo sia una soluzione giusta la mia




class NODO
{
public:
NODO(){key=0;peso=0;next=NULL;adj=NULL;}
public:
int key;
int peso;
NODO* next;
NODO* adj;
public:
NODO* crea_nodo(int);
NODO* crea_adiacenza(int,int );
};

Loading