|
|
|
|
 |
|  |
 |
Shaper |
| Io l'ho iniziato da poco, ma credo di essermi fatt ... |
20-02-2009 08:32 |
|
 |
Shaper |
.consigliere.

Registered: Sep 2007
Posts: 147 (0.02 al dì)
Location: Milano
Corso: Informatica
Anno: Secondo anno
Time Online: 1 Day, 11:23:27 [...]
Status: Offline
Edit | Report | IP: Logged |
Io l'ho iniziato da poco, ma credo di essermi fatto un'idea abbastanza precisa di come implementarlo.
Pensavo di usare vari alberi rb: per esempio, uno per contenere tutti gli utenti e uno come membro di ogni nodo utente, per rappresentare le amicizie. (come penso molti avranno fatto)
Il problema è che sono due alberi con nodi diversi e quindi devo scrivere le funzioni per gestirli due volte (rb_search_utente e rb_search_amicizie, per esempio)..
Secondo voi si incasina troppo il codice e mi faranno storie o mi sto facendo paranoie per niente?
Il fatto è che non vedo altre soluzioni, se fossimo in un linguaggio a oggetti magari si potrebbe risolvere con l'ereditarietà o i tipi generici, ma... vabbè se ne è già parlato 
__________________
Eidolon64|Blog
|
|
20-02-2009 08:32 |
|
|
|  |
 |
hyperion |
| [QUOTE][i]Originally posted by Shaper [/i]
... |
20-02-2009 08:48 |
|
 |
hyperion |
.illuminato.
Registered: Oct 2007
Posts: 171 (0.03 al dì)
Location:
Corso: Informatica
Anno:
Time Online: 3 Days, 12:37:41 [...]
Status: Offline
Edit | Report | IP: Logged |
Originally posted by Shaper
Io l'ho iniziato da poco, ma credo di essermi fatto un'idea abbastanza precisa di come implementarlo.
Pensavo di usare vari alberi rb: per esempio, uno per contenere tutti gli utenti e uno come membro di ogni nodo utente, per rappresentare le amicizie. (come penso molti avranno fatto)
Il problema è che sono due alberi con nodi diversi e quindi devo scrivere le funzioni per gestirli due volte (rb_search_utente e rb_search_amicizie, per esempio)..
potresti ovviare al creare 2 alberi differenti vedendo un albero delle amicizie come avente radice nel nodo dell'albero generale...quindi fai un sottoalbero delle amicizie e le funzioni di ricerca rimangono le stesse cambiando solamente la radice...
poi nn so come tu voglia gestire i gruppi..
Secondo voi si incasina troppo il codice e mi faranno storie o mi sto facendo paranoie per niente?
Il fatto è che non vedo altre soluzioni, se fossimo in un linguaggio a oggetti magari si potrebbe risolvere con l'ereditarietà o i tipi generici, ma... vabbè se ne è già parlato [/B]
sul modo di rappresentare le amicizie io credo ci sia poco da disquisire....alla fine se non usi tabelle hash hai poche altre alternative per rappresentarle...
|
|
20-02-2009 08:48 |
|
|
|  |
 |
Shaper |
| [QUOTE][i]Originally posted by hyperion [/i]
... |
20-02-2009 09:06 |
|
 |
Shaper |
.consigliere.

Registered: Sep 2007
Posts: 147 (0.02 al dì)
Location: Milano
Corso: Informatica
Anno: Secondo anno
Time Online: 1 Day, 11:23:27 [...]
Status: Offline
Edit | Report | IP: Logged |
Originally posted by hyperion
potresti ovviare al creare 2 alberi differenti vedendo un albero delle amicizie come avente radice nel nodo dell'albero generale...quindi fai un sottoalbero delle amicizie e le funzioni di ricerca rimangono le stesse cambiando solamente la radice...
poi nn so come tu voglia gestire i gruppi..
In pratica potrei creare un unico nodo con tutti i membri che mi servono per gestire utenti gruppi e amicizie... In questo caso dovrei però incasinare notevolmente le funzioni, per fargli capire che stanno maneggiando un utente o un amicizia..
Devo vedere se mi conviene, dato che comunque il tempo di esecuzione e l'efficenza sarebbero gli stessi credo, si tratterebbe solo di rendere meno ridondante il codice..
Grazie del consiglio comunque! 
Pensavo di fare un unico nodo sia per gli utenti che per i gruppi, con un membro tipo a identificarli. Alla fine un gruppo si comporta come un utente e i membri del gruppo possono essere visti come un albero di amicizie..
Mi sembra che anche qualcun altro qui abbia proposto una soluzione simile qualche post fa..
Ah, ma voi date in pasto al prof un unico file.c o pensate che gradirebbe anche un file di intestazione?
__________________
Eidolon64|Blog
|
|
20-02-2009 09:06 |
|
|
|  |
 |
hyperion |
| [QUOTE][i]Originally posted by Shaper [/i]
... |
20-02-2009 09:10 |
|
 |
hyperion |
.illuminato.
Registered: Oct 2007
Posts: 171 (0.03 al dì)
Location:
Corso: Informatica
Anno:
Time Online: 3 Days, 12:37:41 [...]
Status: Offline
Edit | Report | IP: Logged |
Originally posted by Shaper
In pratica potrei creare un unico nodo con tutti i membri che mi servono per gestire utenti gruppi e amicizie... In questo caso dovrei però incasinare notevolmente le funzioni, per fargli capire che stanno maneggiando un utente o un amicizia..
Devo vedere se mi conviene, dato che comunque il tempo di esecuzione e l'efficenza sarebbero gli stessi credo, si tratterebbe solo di rendere meno ridondante il codice..
Grazie del consiglio comunque! 
Pensavo di fare un unico nodo sia per gli utenti che per i gruppi, con un membro tipo a identificarli. Alla fine un gruppo si comporta come un utente e i membri del gruppo possono essere visti come un albero di amicizie..
Mi sembra che anche qualcun altro qui abbia proposto una soluzione simile qualche post fa..
Ah, ma voi date in pasto al prof un unico file.c o pensate che gradirebbe anche un file di intestazione?
Se tratti un gruppo come un nodo devi stare attento a distinguerlo nelle visite!Cmq a parte questo non è un problema!
No,non ci sono indicazioni sul numero di file da eseguire ecc ecc...credo che alla fine importi poco dato che è un esame di algoritmi e non di programmazione in senso stretto....certo cmq se lo fai su più file lo rendi più ordinato...fate vobis! (fate o facite??)
|
|
20-02-2009 09:10 |
|
|
|  |
 |
Gehur |
| be guarda io uso gli alberi per implementare i gru ... |
20-02-2009 10:26 |
|
 |
Gehur |
.grande:maestro.
Registered: Apr 2006
Posts: 519 (0.07 al dì)
Location: Milano
Corso: Informatica
Anno:
Time Online: 3 Days, 0:41:42 [...]
Status: Offline
Edit | Report | IP: Logged |
be guarda io uso gli alberi per implementare i gruppi e i membri del gruppo, ed uso la stessa struttura; nei gruppi ci sarà una stringa per il titolo, nei membri la stessa stringa sarà usata per il nome..in ogni nodo del gruppo ci sarà un puntatore ad un albero membri
invece uso tabelle hash per profili e amici, liste per richieste e gruppi associati ad ogni profilo
a questo prorposito devo capire bene come usare dijkstra con la tabella hash amici (che poi sono come liste concatenate--->grafi)
|
|
20-02-2009 10:26 |
|
|
|  |
 |
Joy88 |
| ...credo che alla fine importi poco dato che è un ... |
20-02-2009 10:32 |
|
 |
Joy88 |
.consigliere.
Registered: Jan 2008
Posts: 101 (0.02 al dì)
Location: ~Milano
Corso: Informatica
Anno: 3°
Time Online: 1 Day, 10:27:00: [...]
Status: Offline
Edit | Report | IP: Logged |
...credo che alla fine importi poco dato che è un esame di algoritmi e non di programmazione in senso stretto....
Hyperion mi sento chiamata in causa.. 
Cmq.. com'è andato il tuo???
__________________
"Amor, ch’a nullo amato amar perdona, mi prese del costui piacer sì forte che, come vedi, ancor non m’abbandona."
*Dante*
|
|
20-02-2009 10:32 |
|
|
|  |
 |
hyperion |
| [QUOTE][i]Originally posted by Joy88 [/i]
... |
20-02-2009 11:22 |
|
 |
hyperion |
.illuminato.
Registered: Oct 2007
Posts: 171 (0.03 al dì)
Location:
Corso: Informatica
Anno:
Time Online: 3 Days, 12:37:41 [...]
Status: Offline
Edit | Report | IP: Logged |
Originally posted by Joy88
...credo che alla fine importi poco dato che è un esame di algoritmi e non di programmazione in senso stretto....
Hyperion mi sento chiamata in causa.. 
Cmq.. com'è andato il tuo???
devo fare la relazione...tu a che punto sei?
|
|
20-02-2009 11:22 |
|
|
|  |
 |
Johnny88 |
| Ciao ragazzi, ho appena superato l'appello di febb ... |
20-02-2009 11:25 |
|
 |
Johnny88 |
I Am Become Death
Registered: Feb 2008
Posts: 54 (0.01 al dì)
Location:
Corso: Informatica
Anno: 2
Time Online: 14:44:07: [...]
Status: Offline
Edit | Report | IP: Logged |
Ciao ragazzi, ho appena superato l'appello di febbraio e adesso sto incominciando a pensare al progetto...
Mi pare di capire che molti di voi lo stiano facendo con gli alberi BR?
Io stavo pensado ad un grafo fatto a liste di adiacenza con inserimento ordinato...
|
|
20-02-2009 11:25 |
|
|
|  |
 |
Joy88 |
| Hyperion.. a un punto morto!!!
... |
20-02-2009 11:32 |
|
 |
Joy88 |
.consigliere.
Registered: Jan 2008
Posts: 101 (0.02 al dì)
Location: ~Milano
Corso: Informatica
Anno: 3°
Time Online: 1 Day, 10:27:00: [...]
Status: Offline
Edit | Report | IP: Logged |
Hyperion.. a un punto morto!!!
Segmentation fault!! Ti dico solo questo!!!
..è che non ho ancora ben chiaro come strutturare il progetto con gli alberi!!!!
mah..
__________________
"Amor, ch’a nullo amato amar perdona, mi prese del costui piacer sì forte che, come vedi, ancor non m’abbandona."
*Dante*
|
|
20-02-2009 11:32 |
|
|
|  |
 |
hyperion |
| [QUOTE][i]Originally posted by Joy88 [/i]
... |
20-02-2009 11:47 |
|
 |
hyperion |
.illuminato.
Registered: Oct 2007
Posts: 171 (0.03 al dì)
Location:
Corso: Informatica
Anno:
Time Online: 3 Days, 12:37:41 [...]
Status: Offline
Edit | Report | IP: Logged |
Originally posted by Joy88
Hyperion.. a un punto morto!!!
Segmentation fault!! Ti dico solo questo!!!
..è che non ho ancora ben chiaro come strutturare il progetto con gli alberi!!!!
mah..
mmm...in che punto ti da questo errore?
|
|
20-02-2009 11:47 |
|
|
|  |
 |
Joy88 |
| quando voglio inserire il profilo, inserisco con l ... |
20-02-2009 11:53 |
|
 |
Joy88 |
.consigliere.
Registered: Jan 2008
Posts: 101 (0.02 al dì)
Location: ~Milano
Corso: Informatica
Anno: 3°
Time Online: 1 Day, 10:27:00: [...]
Status: Offline
Edit | Report | IP: Logged |
quando voglio inserire il profilo, inserisco con la funzione inserisci.
e fin lì tutto ok..
Controllo poi se il profilo esiste.
Se esiste devo modificare lo stato e io faccio:
prof = ricerca (albero, nome);
if (prof!= NULL)
{
prof->stato= stato;
}
..è giusto che modifico lo stato in questo modo?? mmm.. è qui che va in errore...
__________________
"Amor, ch’a nullo amato amar perdona, mi prese del costui piacer sì forte che, come vedi, ancor non m’abbandona."
*Dante*
|
|
20-02-2009 11:53 |
|
|
|  |
 |
hyperion |
| [QUOTE][i]Originally posted by Joy88 [/i]
... |
20-02-2009 12:03 |
|
 |
hyperion |
.illuminato.
Registered: Oct 2007
Posts: 171 (0.03 al dì)
Location:
Corso: Informatica
Anno:
Time Online: 3 Days, 12:37:41 [...]
Status: Offline
Edit | Report | IP: Logged |
Originally posted by Joy88
quando voglio inserire il profilo, inserisco con la funzione inserisci.
e fin lì tutto ok..
Controllo poi se il profilo esiste.
Se esiste devo modificare lo stato e io faccio:
prof = ricerca (albero, nome);
if (prof!= NULL)
{
prof->stato= stato;
}
..è giusto che modifico lo stato in questo modo?? mmm.. è qui che va in errore...
non è lecita quella scrittura...devi usare strcpy...cosi puoi assegnare al campo stato il tuo stato argomento delle funzione.....
|
|
20-02-2009 12:03 |
|
|
|  |
 |
Joy88 |
| Ahahahah!!!
... |
20-02-2009 12:05 |
|
 |
Joy88 |
.consigliere.
Registered: Jan 2008
Posts: 101 (0.02 al dì)
Location: ~Milano
Corso: Informatica
Anno: 3°
Time Online: 1 Day, 10:27:00: [...]
Status: Offline
Edit | Report | IP: Logged |
Ahahahah!!!
Pensare che ci ho perso tutto ieri pomeriggio!!!!
Incredibile.. mi ribello anch'io al C!
__________________
"Amor, ch’a nullo amato amar perdona, mi prese del costui piacer sì forte che, come vedi, ancor non m’abbandona."
*Dante*
|
|
20-02-2009 12:05 |
|
|
|  |
 |
Shaper |
| [QUOTE][i]Originally posted by Joy88 [/i]
... |
20-02-2009 12:06 |
|
 |
Shaper |
.consigliere.

Registered: Sep 2007
Posts: 147 (0.02 al dì)
Location: Milano
Corso: Informatica
Anno: Secondo anno
Time Online: 1 Day, 11:23:27 [...]
Status: Offline
Edit | Report | IP: Logged |
Originally posted by Joy88
quando voglio inserire il profilo, inserisco con la funzione inserisci.
e fin lì tutto ok..
Controllo poi se il profilo esiste.
Se esiste devo modificare lo stato e io faccio:
prof = ricerca (albero, nome);
if (prof!= NULL)
{
prof->stato= stato;
}
..è giusto che modifico lo stato in questo modo?? mmm.. è qui che va in errore...
Non saprei, io ho fatto più o meno così e funziona..
Domanda stupida: prof è un puntatore a un nodo, vero? Perchè le prime volte che ho smanettato con gli alberi l'ho dichiarato così rbnode prof;
invece che così rbnode *prof;
__________________
Eidolon64|Blog
|
|
20-02-2009 12:06 |
|
|
|  |
 |
hyperion |
| [QUOTE][i]Originally posted by Shaper [/i]
... |
20-02-2009 12:07 |
|
 |
hyperion |
.illuminato.
Registered: Oct 2007
Posts: 171 (0.03 al dì)
Location:
Corso: Informatica
Anno:
Time Online: 3 Days, 12:37:41 [...]
Status: Offline
Edit | Report | IP: Logged |
Originally posted by Shaper
Non saprei, io ho fatto più o meno così e funziona..
Domanda stupida: prof è un puntatore a un nodo, vero? Perchè le prime volte che ho smanettato con gli alberi l'ho dichiarato così rbnode prof;
invece che così rbnode *prof;
no prof è un puntatore o a Goldewerwerwrum o a Torelli...
XD XD
|
|
20-02-2009 12:07 |
|
|
|  |
 |
| All times are GMT. The time now is 23:18. |
|
|
 |
|
 |
|
|
|  |
Forum Rules:
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
|
HTML code is OFF
vB code is ON
Smilies are ON
[IMG] code is ON
|
|
|
|
|
|