 | |
Il progetto dsy.it è l'unofficial support site dei corsi di laurea del Dipartimento di Scienze dell'Informazione e del Dipartimento di Informatica e Comunicazione della Statale di Milano. E' un servizio degli studenti per gli studenti, curato in modo no-profit da un gruppo di essi. I nostri servizi comprendono aree di discussione per ogni Corso di Laurea, un'area download per lo scambio file, una raccolta di link e un motore di ricerca, il supporto agli studenti lavoratori, il forum hosting per Professori e studenti, i blog, e molto altro...
In questa sezione è indicizzato in textonly il contenuto del nostro forum |
[Progetto] "Domino" Clicca QUI per vedere il messaggio nel forum |
johnnyd |
Ragazz... Di solito il progetto quanti giorni prima dell'appello viene pubblicato? |
sbin |
Originally posted by johnnyd
Ragazz... Di solito il progetto quanti giorni prima dell'appello viene pubblicato?
Il giorno dell'appello è il giorno di pubblicazione del progetto!!! Poi ti danno circa una ventina di giorni per farlo. |
johnnyd |
mentre l'orale è il giorno dell'appello o sempre dopo il progetto? |
ideafix |
No con Torelli\Aguzzoli l'orale è sempre dopo (infatti una parte dell'orale consiste propio nella discussione del progetto).
Quindi in genere è circa una settimana dopo la consegna del progetto
(nel progetto stesso dovrebbero cmq essere scritte le probabili date degli orali) |
GiKappa |
ciao,
pensavo di provare l'appello di luglio e volevo sapere indicativamente quando uscirà il progetto per questo appello.
un'altra cosa: è possibile fare il progetto per un appello (es giugno) e poi dare l'orale a un altro (es luglio)? |
sbin |
Originally posted by GiKappa
ciao,
pensavo di provare l'appello di luglio e volevo sapere indicativamente quando uscirà il progetto per questo appello.
un'altra cosa: è possibile fare il progetto per un appello (es giugno) e poi dare l'orale a un altro (es luglio)?
l'orale riguarda il progetto.. quindi devono essere fatti nello stesso appello. Hai guardato sul sifa se hanno già messo una data?
questa è la procedura:
sul sifa c'è la data dell'appello
in questa data, in realtà, verrà pubblicato il progetto.
avrete circa 20 giorni per farlo.
alla data di consegna specificherete in che data vorrete sostenere l'orale che indicativamente andrà da una settimana dopo la consegna in poi.
se guardate i testi dei vecchi progetti potrete farvi un'idea dello spazio temporale delle varie fasi! |
ad676556 |
contando che come data di pubblicazione del progetto di giugno è il 12 ... più 20 arriviamo agli inizi di luglio... in teoria nel caso si viene bocciati si rischia di saltare l'appello di luglio? :( |
sbin |
Originally posted by ad676556
contando che come data di pubblicazione del progetto di giugno è il 12 ... più 20 arriviamo agli inizi di luglio... in teoria nel caso si viene bocciati si rischia di saltare l'appello di luglio? :(
uhm... credo di sì visto che anche i due scorsi appelli si erano accavallati! A meno che l'esame non lo facciano alla fine di luglio.
Cmq ragazzi.. capite subito se riuscirete a fare il progetto o no. Si presuppone che uno che lo porta avanti passerà l'esame! Ovviamente se il progetto funziona in tutte le sue parti.
Almeno questo è quello che penso io.
Lo scorso appello avevano dato 15/20 gg per prepararlo.. io, lavorandoci dalla mattina alle 8 fino alle 22 di sera, l'ho preparato in una settimana. In linea di massima avevo un'idea su come farlo. Credo che questo sia il passo fondamentale!!!!
In bocca al lupo! |
GiKappa |
Originally posted by sbin
uhm... credo di sì visto che anche i due scorsi appelli si erano accavallati! A meno che l'esame non lo facciano alla fine di luglio.
Cmq ragazzi.. capite subito se riuscirete a fare il progetto o no. Si presuppone che uno che lo porta avanti passerà l'esame! Ovviamente se il progetto funziona in tutte le sue parti.
Almeno questo è quello che penso io.
Lo scorso appello avevano dato 15/20 gg per prepararlo.. io, lavorandoci dalla mattina alle 8 fino alle 22 di sera, l'ho preparato in una settimana. In linea di massima avevo un'idea su come farlo. Credo che questo sia il passo fondamentale!!!!
In bocca al lupo!
il problema è che bisogna anche studiare la teoria di algoritmi e, tra altri esami e impegni personali, è dura!
personalmente spero che ci sia un appello anche a luglio, altrimenti proverò a settembre! |
sbin |
Originally posted by GiKappa
il problema è che bisogna anche studiare la teoria di algoritmi e, tra altri esami e impegni personali, è dura!
personalmente spero che ci sia un appello anche a luglio, altrimenti proverò a settembre!
Allora fallo direttamente a luglio!!! Così se non riesci a consegnare il progetto.. lo rifai a settembre così, calcolando i tempi di realizzazione/consegna/orale non passerà troppo tempo!
questo è quel che farei io :-)
buono studio! |
tata1283 |
L'appello di luglio è il 3.
Anche io farei come dice Sbin...infatti è quello che faccio :-) |
juanito |
scusate, non trovo la pagina di pubblicazione del progetto...
mi sapete dire dove lo trovo?
inoltre: la data indicata sul SIFA è della consegna del progetto oppure dell'uscita in rete?
grazie
juanito@fastwebnet.it |
sbin |
Originally posted by juanito
scusate, non trovo la pagina di pubblicazione del progetto...
mi sapete dire dove lo trovo?
inoltre: la data indicata sul SIFA è della consegna del progetto oppure dell'uscita in rete?
grazie
juanito@fastwebnet.it
http://homes.dsi.unimi.it/~aguzzoli/algo.htm
Come ho già scritto prima.. la data del SIFA è quella dell'uscita del progetto. |
Gehur |
allora cosa vi sembra ragazzi? |
nocIvo |
nessuno ancora che ci ha dato 1 occhiata? :D
sono ben accetti suggerimenti, meeting di discussione ecc :D |
Gehur |
te cosa ne pensi, a me sembra fattibile(con un po di impegno), percaso hai gia pensato a che struttura dati usare?? |
nocIvo |
il problema è che io ho poco tempo :?
sto pensando alla struttura dati migliore per trovarmi un cammino di costo minimo senza avere una variabile int "peso" come di solito si ha in questi casi visto che le tessere del domino hanno solo il nome e i 2 colori :)
alberello? volendo si ma di che tipo :? |
Abaddon |
Secondo me non c'è bisogno di usare gli alberi.....basta una semplice lista. Non è impossibili,secondo il mio punto di vista è molto piu faccili rispetto a gli altri.
P.S.Qualcuno di voi a mai assistito ad un esame di Torelli??Cosa chiede??
THANKS |
nocIvo |
si in effetti poi ho pensato ad una lista pure io :D
ma come si possono gestire le disposizioni delle tessere? |
Abaddon |
Io sto faccendo cosi.......
Esempio: nella lista hai questi elementi Tessera 1(rosso,verde,calcio) Tessera 2(verde,giallo,orso)
Scorri la lista....
if colore2ditessera1==Colore1ditessera2
(tessera1,1),(tessera2,1)
se fosse stato:
Tessera 1(rosso,verde,calcio) Tessera 2(giallo,verde,orso)
if colore2ditessera1==Colore1ditessera2
(tessera1,1),(tessera2,1)
else if colore2ditessera1==Colore2ditessera2
(tessera1,1),(tessera2,-1)
P.S.Sto ancora formalizzando le funzioni,quindi potrebbe essere sbagliata..... di codice ho solo scritto la struttura generale. |
nocIvo |
quindi con un listozzo si può portare avanti la baracca?uhm allora vedrò di partorire anche io qualcosa!
w la mossa del cavallo! |
Abaddon |
Io ho letto le specifiche....ma ho un dubbio sul file da leggere (in input).E già pronto oppure lo costrusci l'utente inserendo da tastiera?? |
nocIvo |
di solito ti costruisci i file tu senza stare lì a digitare ogni volta
ma penso che vada contemplato anche l'input da tastiera |
Abaddon |
Si certo,per le prove ho il mio file..altrimenti impazzirei ancora di piu!
:)Thanks. |
Abaddon |
Si certo,per le prove ho il mio file..altrimenti impazzirei ancora di piu!
:)Thanks. |
Gehur |
pure io avevo pensato prima ad un albero poi ad una lista, alla fine le tessere sono disposte in sequenza quindi mi è venuta in mente la lista
spero di farcela, non mi sembra nemmeno difficilissimo come progetto
per l'input voi usate un file allora?? ma come fate? percaso è spiegato in qualche slide? |
Abaddon |
Io uso un file di testo per l'input e un'altro file di testo per l'output.
Io non mi ricordo che nelle slides ci sia la gestione dei file.
|
Gehur |
pensandoci oggi se si implementa tramite lista la computazione potrebbe essere lenta, da quel che so il prof non vuole un implementazione lenta (almeno negli anni passati era così), stavo rivalutando in positivo l'uso degli alberi e stavo pensando anche alle tabelle hash (complicate però)
alla fine come fai ad inmplementare in maniera efficente la funzione domino con delle liste?? |
Skilotto83 |
mediamente quando lo avevo fatto io ricordo che le liste permettono la sufficenza nel progetto se fatto copleto e bene...ma se puntate a piu' d 22-23 con le liste non ve lo da'....dovete usare gli alberi..o liste e alberi insieme..
;) |
Abaddon |
La cosa è fattibile sia con gli alberi e le tabelle hash....ma perchè essere sadomasochisti???????
Non credo che il Prof.valuti in base alle strutture dati usate,ma in base all'efficenza degli algoritmi usati nell'implementazione!!
Perchè mi dovrei complicare la vita? La cosa fondamentale è risolvere al meglio il problema.Poi stara a tutti noi giustificare le scelte all'orale.
Questo è il mio pensiero. |
Gehur |
allora premetto che di questa materia mi ricordo poco e niente, mi sembra che in base alla struttura usata dovrebbe cambiare l'efficenza...io credo di usare gli alberi (escludo le hash per ovvie ragioni), ma devo vedere cosa mettere dentro i nodi
voi a che punto siete, che idea vi siete fatti riguardo alla funzione domino? |
Skilotto83 |
Originally posted by Abaddon
La cosa è fattibile sia con gli alberi e le tabelle hash....ma perchè essere sadomasochisti???????
Non credo che il Prof.valuti in base alle strutture dati usate,ma in base all'efficenza degli algoritmi usati nell'implementazione!!
Perchè mi dovrei complicare la vita? La cosa fondamentale è risolvere al meglio il problema.Poi stara a tutti noi giustificare le scelte all'orale.
Questo è il mio pensiero.
si ma l'efficenza di una lista è quella che è..
Per trovare un elemento devi scorrerla tutta fino a quando lo trovi..e lo stesso per fare un inserimento...
Ora nn ricordi bene le notazioni O grande etc etc..
Pero' la lista è lineare come tempo medio..l'albero sicuro no..
;) |
sbin |
Originally posted by Skilotto83
mediamente quando lo avevo fatto io ricordo che le liste permettono la sufficenza nel progetto se fatto copleto e bene...ma se puntate a piu' d 22-23 con le liste non ve lo da'....dovete usare gli alberi..o liste e alberi insieme..
;)
Confermo! Io ho preso 28 e ho usato una lista su cui ha avuto da ridire!!!
Mi sono salvata con il resto del progetto che era ben fatto!
Se volete il mio progetto (asteroidi) è nell'area filez.
Usate liste solo se sono veramente innoque! |
Gehur |
voi che avete gia dato, cosa ne pensate di questo progetto |
hulkmania |
Ciao,
qualcuno ha qualche idea sulla funzione domino? |
Gehur |
bella domanda, secondo me non c'è molto da ottimizzare, nel senso che non mi sembra ci siamo tante maniere per farla |
FreeStyle |
Ciao ragazzi
ma una volta implementata la struttura c'è il prob. di sviluppare questo algoritmo per i vari cammini minimi
ma tutti gli algoritmi che parla dei cammini minimi sono implementati secondo il peso degli archi..
Il problema che se vorremmo aggiungere devi pesi o dei punti ai vari collegamenti secondo quale criterio lo dovremmo farlo?:?:?
nn abbiamo il tempo di percorenza tra una tessera e un'altra anche xchè il tempo tra 2 tessere adiacenti è quello.
voi che ne pensate? qualcuno sa quel poco di teorica per indicarci la strada giusta???:razz::razz: |
Gehur |
se ho capito la tua domanda, cioè come facciamo a inserire i dati dentro la struttura(liste, alberi o altro), il criterio lo devi trovare tu....
come ho detto prima da quel poco che ci sono stato a pensare, secondo me il cammino minimo si puo fare un pochi modi |
nocIvo |
l'unica lezione di laboratorio che abbiamo fatto quest'anno con fiorentini sulla programmazione dinamica era su di una matrice STATICA con valori int
Ora bisogna implementare il tutto su una struttura dinamica e senza una variabile "peso" di tipo int
Se qualcuno possiede del materiale dove si illustra come implementare la programmazione dinamica con le liste la posti x favore!!!!magari riesco ad uscirne fuori visto che non sono nato imparato in C
thanx |
FreeStyle |
no ad inserire i dati dentro la struttura..
ma ad esempio sul libro gli algo che ci sn, scelgono un cammino anziche un altro dal peso del del link che può essere ad esempio
il tempo di percorrenza da un nodo ad quello adiacente..
invece nel nostro caso sceglere se andare nel in un nodo adiacente anziche nell'altro nodo adiacente ad esempio
se abbiamo V|G e poi abbiamo G|B ecc..
e dobbiamo fare un percorso N|G
magari c'è un algo che ti consigliava una strada da percorrere a priori nn so provare prima V|G anzichè G|B..
ma penso di no, penso che bisogna fare tutti i percorsi e fare i confronti tra loro..
cosa ne pensate?
Può essere na domanda stupida ma una conferma nn mi farebbe male.. grazie |
nocIvo |
penso che devi prima fare tutti i percorsi possibili e poi tenere tipo una tabella dove memorizzi la lunghezza dei vari percorsi ottenuti
da quello che ho capito è 1 strada possibile |
sbin |
Originally posted by Gehur
voi che avete gia dato, cosa ne pensate di questo progetto
Scusa.. ma sinceramente non c'ho proprio guardato!!!
Sto litigando con fisica :(
E poi ho ancora Istituzioni.. non ho proprio il tempo per quardarlo.. mi spiace!
Cmq.. provate a guardare i progetti passati, magari c'è qualche cosa di simile! Io ho fatto così e la cosa mi è tornata molto utile! |
nocIvo |
guarda baratterei il tuo 28 in algo con istituzioni e fisica da dare!!!
ehehehe
cmq anche io sto dando un'occhiata ai progetti vecchi! |
Gehur |
Originally posted by sbin
Scusa.. ma sinceramente non c'ho proprio guardato!!!
Sto litigando con fisica :(
E poi ho ancora Istituzioni.. non ho proprio il tempo per quardarlo.. mi spiace!
Cmq.. provate a guardare i progetti passati, magari c'è qualche cosa di simile! Io ho fatto così e la cosa mi è tornata molto utile!
si be ovvio, prima le altre materie(e che materie) :approved:
per quanto riguarda NOCIVO ci sono le slide del fiorentini che spiegano un po tutto
http://homes.dsi.unimi.it/~fiorenti/labalg06.html |
sbin |
Originally posted by nocIvo
guarda baratterei il tuo 28 in algo con istituzioni e fisica da dare!!!
ehehehe
cmq anche io sto dando un'occhiata ai progetti vecchi!
28 il progetto... + una schifezza in teoria.. totale 26 :-)
vuoi barattare??!!?!?! MAGARI!!!!!!! :D
peccato che il mercato nero è illegale ihihihihihih
Se fate bene il progetto... al massimo vi abbassa di 2 o 3 voti l'orale nel caso facesse abbastanza schifo! (vi parlo per esperienza personale :( )
Buon lavoro a tutti! |
nocIvo |
guarda io ho 25 nello scritto la mia idea è fare come in statistica OTTIMO SCRITTO che serve x PARACADUTE all'orale :-))) |
nocIvo |
domanda parecchio fessa ma alla quale non ho risp, ma esiste un equivalente della funzione charat in ansi C che mi restituisce il carattere in posizione i di una stringa? sto cercando su internet ma con scarsi risultati :)
assie :D |
Gehur |
cavoli la funzione domino è abbastanza complessa, percaso qualcuno pensa di aver trovato una soluzione?
mi sa che ti devi salvare la stringa in un array, ma non ne sono sicuro, sono molto arruginito con il c |
hulkmania |
io pensavo a un grafo... ma nn ho ben chiaro come costruirlo :-/ |
Alececk84 |
Originally posted by nocIvo
domanda parecchio fessa ma alla quale non ho risp, ma esiste un equivalente della funzione charat in ansi C che mi restituisce il carattere in posizione i di una stringa? sto cercando su internet ma con scarsi risultati :)
assie :D
Se ho capito bene quello che chiedi basta fare "stringa[i]" o no?
ammesso che stringa sia la tua stringa... |
nocIvo |
risolto grazie 1000 ho messo a posto la funzione max e quindi penso di fare anche cacofonia ma domino mette in difficoltà pure me :-( |
Gehur |
cavoli stai procedendo nocIvo.... io devo ancora decidere dove/come salvare le tessere...fra un po comunqe devo iniziare anchio a scrivere codice
alla fine dalla mia breve analisi le difficoltà che ho trovato sono la funzione domino e la struttura principale dove salvare le tessere(lista-albero-hash), anche se hash è un bel casino |
nocIvo |
io più che altro devo farmi un'idea di come usare la programmazione dinamica con strutture dai dinamiche :shock: |
nihil |
ok, ho scaricato il progettino di Algo. L'ho letto e non mi sembra piuttosto semplice.
Magari stasera con calma lo risolvo.
;) |
Gehur |
scusa nocIvo ma che strutture dati hai utilizzato, non mi interessa dove altrimenti sembra che ho "copiato" |
nocIvo |
allora io ho usato un algoritmo di programmazione dinamica svincolato dalle strutture dati per calcolare la max sottostringa e la cacofonia, sembra che sia avanti chissà quanto ma invece ho fatto solo le 2 funzioni più immediate visto che trattano solo stringhe in input che poi saranno quelle del domino e allora lì si che entrano in ballo o gli alberi o le liste ecc :-)) infatti su quelle sto cercando ancora su internet come si possa implementare la programmazione dinamica su tali struttue vsto che a lezione manco lontanamente ne abbiamo parlato :shock: |
nihil |
Come immaginavo e' + tosto semplice. Basta creare la corretta struttura dati e tutto va a posto da solo.
la funzione tessera (a,b,s) ha complessita' O(1), la Domino (a,b) O(n log(n)) in cui n non e' il numero delle tessere, ma il numero di tessere che compongono il domino.:-D
spero solo di riuscire ad implementarlo cosi' per come l'ho pensata!:sad: |
nihil |
:D
Perfetto!
Una buona parte la ho implementata e nn mi sembra che c siano problemi.
La mia idea sembra funzionare (Creo perfettamente la struttura).
Ma mi sovviene una domanda: quando creo un domino, le tessere che uso per quel domino posso riutilizzarle anche per un altro domino?
o devo renderle indisponibili per la creazione del domino successivo?
boh... nn e' molto chiaro il testo. |
Gehur |
io ho capito che NON sono disponibili per un altro domino |
nihil |
ok, grazie Gehur,
Mi sovviene un'altro dubio:
la funzione domino (alpha, beta) crea un solo domino?
O forse crea n domini di lunghezza minima?
Anche perche' se io trovo un domino ed escludo le tessere posso anche non trovarmi gli altri domini di lunghezza minima poiche' ho usato le tessere del econdo domino per il primo domino e quindi il secondo potrebbe anche sparire. |
Gehur |
secondo me la funzione crea un solo domino
io da lunedi inizio a scrivere il codice altrimenti diventa troppo tardi, intanto spero di trovare soluzioni adeguate alla risoluzione del progetto
cavoli mi sono accorto che il tempo passa in fretta..in pratica mi sa che dovrò provare a fare il progetto in una sola settimana :shock:
poi volevo sapere se la chiave di un albero poteva essere composta da 2 valori |
nocIvo |
io sto diventando scemo con le tessere del domino :shock:
cioè tutte quelle permutazioni dei domini possibili bho :-)))
ieri ho riempito fogli di carta a manetta |
nihil |
scusami Gehur, non avevo letto.
Apparte il fatto che non so cosa vuoi fare con gli alberi: in generale si! Puoi usare tutte le chiavi che ritieni opportune, solo che devi fare attenzione a come fai le ricerche; nel senso che se cerchi con una chiave dovrai fare certi passi per trovare il tuo nodo, ma se usi l'altra chiave ne devi fare delle altre.
Se stai usando alberi binari ti sconsiglio caldamente di usare 2 chiavi, ma +tosto 2 alberi.
per Nocivo:
e' + semplice d quanto immagini.:cool:
cmq fai sempre bene a riempire fogli di carta +tosto che scrivere codice inutile che poi ti trovi costretto a rattoppare
:) |
Gehur |
ok dalla tua risposta sembra che tu non abbia usato alberi.....
poi mi sembra di capire che tu in pratica hai già finito, nel senso che sei riuscito a risolvere tutto e devi solo scrivere il codice....complimenti |
nihil |
Grossomodo si.
ovviamente mi manca ancora l'implementazione di qualcosa. Con buone probabilita' lo finiro' oggi.
cmq nn mi risulta chiaro se la cancellazione di un domino implica la rimozione totale delle tessere o le tessere devono tornare disponibili per altri domini.
P.S.: che te ne fai degli alberi? |
Gehur |
allora mi sembra di ricordare che la cancellazione di un domino libera le tessere, infatti per cancellare le tessere c'è elimina
hai un pm :D |
nihil |
ok, giusto, ma se elimino una tessera che e' gia' in un domino devo eliminarla lo stesso o ingnoro e basta.
e se la elimino lo stesso devo eliminare anche il domino che la contiene, perche' se il domino nn puo esistere senza tutte le tessere che lo compongono.
p.s.: vedi che hai un PM! :D |
nocIvo |
ma immagino non sia chissà cosa ma io sono tarato con il C :-)
arriverà l'illuminazione anche x me |
Gehur |
allora le domande che hai fatto hanno un senso, solo che leggendo il testo non trovo na risposta adeguata, bisognerebbe chiedere al professore
ma percaso qualcuno ha controllato se ci sono stati cambiamenti/aggiornamenti, io purtoppo sono impegnato con altre materie, è per questo che non ho ancora iniziato.. |
nihil |
hai ragione; il testo non e' chiaro e ho appena visto che c sono stati degli aggiornamenti:
il prof scrive:
PRECISAZIONE
elimina(σ) non compie alcuna operazione se σ è il nome di una tessera che appartiene a un domino. Il testo in rete è stato corretto. |
Gehur |
ok adesso almeno sappiamo cosa fare
ps: ricevuto il pm? |
nihil |
si, e ti ho anche risposto. |
Gehur |
ok ricevuto tutto...da domani spero di iniziare pure io, edi trovare una soluzione a sto dimino...(anche se un qualche idea e gia in mente)
altro pm....:razz: |
vlaste |
allora... implementato tutto... funziona tutto TRANNE un caso particolare che probabilmente manderà a ramengo buona parte del mio progetto... per calcolare il domino ho usato un algoritmo di vista dei grafi.... che però non riesco a far funzionare quando da un nodo torno nel nodo stesso!
help! |
nihil |
spiegati meglio:
cosa vuol dire ritorna su se stesso? |
Gehur |
allora come idee dovrei essere apposto, ora devo inizare a scrivere codice...
volevo chiedere delle cose:
1)
nella prima versione del progetto, credo di aver trovato un errore nell'esempio, il caso è D verde, verde, stampa
(
tela: verde, rosa
pesca: rosa, nero
cammello: nero, rosso
mela: rosso, blu
topo: blu, verde
)
ma non è il cammino + breve....
2)come identifico un domino, una volta creato il dominio come faccio a sceglierlo trai i vari domini creati
3)negli alberi binari ci possono esere 2 nodi uguali in posizioni diverse?
4)cosa sono i numeri stampati nell'esempio? per dire il 7 che mi rappresenta (l'ultimo numero dell'esempio) |
nihil |
ciaoa Gehur, mi appresto a Risponderti :
1) Non ho ben capito perche' non e' il cammino + breve
2) Le funzioni che richiamano il domino sono sempre riferiti alla tessera,
per esempio:
stampaDomino ("topo");
o cancellaDomino ("topo");
lo identifichi sempre e comunque con le tessere che ne fanno parte
almeno e' quello che ho capito
3) dipende dall'implementazione, ma in generale si
di solito fai :
if (x<y) vai a sinistra
else vai a destra
dunque a destra ci puo' essere un nodo (x==y)
spero di esser stato chiaro
4) e' la cacofonia del domino nel quale e' presente la tessera "pesca"
che e' per altro quello stampato prima perche' e' presente anche "cammello" |
Gehur |
ciao, allora
1) tavolo (1)
topolino (1)
2) si ci avevo pensato che era inutile avere un identificativo per ogni domino, però ho voluto chiedere lo stesso
3) ok,anche se quello lo sapevo :D comunqe intendevo
----------gb---------->nodo radice
(cv,sx)-------(mr,dx) poi ad esempio sotto il nodo sinistro cv...
(ab,sx)------(gb,dx)-----cioè riavere gb, comunqe credo sia possibile, guarderò anche sul libro
4) grazie |
vlaste |
Originally posted by Gehur
nella prima versione del progetto, credo di aver trovato un errore nell'esempio, il caso è D verde, verde, stampa
[...]
ma non è il cammino + breve....
perchè il cammino tavolo-topolino è già "occupato"... il più breve è quello, o al massimo il viceversa: topo-mela-cammello-pesca-tela.
Originally posted by nihil
spiegati meglio:
cosa vuol dire ritorna su se stesso?
intendo trovare il più breve ciclo nel grafo che contenga un certo nodo, come per esempio quando devo andare da verde a verde |
nihil |
infatti il cammino tavolo-topolino e' gia' occupato
se vedi viene chiesto 2 volte di trovare il cammino verde-verde:
la prima volte e' tavolo-topolino.
la seconda volta ,visto che tavolo e topolino sono impegnate, in un domino, si deve ricorrere (se presente) ad un altro cammino ed e' quello che dice il testo.
potrebbe essere anche il contrario di quello che dice il testo, anche perche il cammino lo puoi vedere sia dal primo verde --> ultimo verde che viceversa.
In ogni caso hai un cammino minimo che va da verde a verde.
a me sembra +tosto chiaro. |
vlaste |
Originally posted by nihil
[...]
a me sembra +tosto chiaro.
Chiarissimo. Come si fa??? :D |
nihil |
ciao Gehur,
Ti ripeto: dipende solo dall'implementazione. Ovvero:
Se tu ritieni di fare un albero nel quale possano essere presenti dei nodi con la stessa chiave devi ricordarti che durante la ricerca non ti devi fermare al primo nodo che incontri che soddisfa la condizione di uguaglianza, ma scorrerli tutti finche uno non la soddisfa + allora sai che tutti quelli che hai attraversato dal primo all'ultimo hanno la stessa chiave.
anche se non capisco a cosa possa servirti avere un albero delle chiavi e non avere chiavi univoche.
boh, Buon lavoro. |
nihil |
vlaste:
devi rendere le tessere impegnate in un domino "non disponibili" nella ricerca, cosi' non le tieni in considerazione nel prossimo cammino.
per implementare questa cosa devi vedere come hai implementato tu la struttura dati che contiene tutto e scegliere una politica (possibilmente efficiente) di "indisponibilita" |
vlaste |
si, fin qui ci sono e funziona tutto. L'unica cosa che non mi funziona è il caso in cui cerco un cammino da un nodo verso il nodo stesso (es. verde-verde).
Di questo caso ho individuato 2 sottocasi:
- partendo da un nodo, riesco a tornare subito indietro da un nodo adiacente in quanto esistono 2 o più archi (es. verde-celeste-verde). Questo per ora l'ho risolto
- devo fare il "giro largo" e tornare indietro. Questa è l'unica cosa del progetto che non mi funge. |
Gehur |
ok, ci penso su..... |
vlaste |
Originally posted by Gehur
ok, ci penso su.....
Siamo (almeno) in due :D |
nihil |
Perdonami vlaste ma non riesco a seguirti:
esistono 2 casi? io ne vedo uno solo.
che vuol dire fare il giro largo? |
vlaste |
Originally posted by nihil
Perdonami vlaste ma non riesco a seguirti:
[...]
Premetto che io ho un grafo i cui nodi sono i colori.
seguendo l'input dato in esempio, chiede:
d verde verde
il domino + breve inizialmente è topolino-tavolo, ovvero il percorso da verde a celeste e da celeste a verde, passando per gli archi topolino e tavolo. I nodi sono adiacenti e collegati da 2 archi.
A questo punto, quando chiede di nuovo
d verde verde
gli archi tavolo e topolino sono occupati, e quindi bisogna fare "il giro largo" (effettivamente era un po' troppo colloquiale come espressione :P) e passare per tela-pesca-cammello-mela-topo o viceversa.
Io in questo ho visto 2 casi e sono riuscito a risolvere solo il primo, ma probabilmente esiste una soluzione + furba che se ne frega e trova il ciclo più breve che contiene "verde" a prescindere da tutto. Il problema è trovarla, questa soluzione... |
nihil |
ah.. ok vlaste adesso ci sono:
hai provato a cancellare l'arco che hai utilizzato nel domino?
cosi' la prossima volta non te la ritrovi e da verde a verde hai un solo cammino disponibile:
tela-pesca-cammello-mela-topo
e se rimuovi anche quegli archi ti rimane quel che ti rimane. |
vlaste |
ti rispondo com un PM perchè temo di rivelare troppo e fare casino |
vlaste |
Originally posted by vlaste
[...] Io in questo ho visto 2 casi [...]
cavolata, il caso è risolvibile, credo, con un'unica soluzione |
Gehur |
vlaste hai un pm....
ok grazie per la risp |
Gehur |
qualcuno mi puo dire come mai ho un errore quando uso la malloc?
struct tessera{
char* alfa;
char* beta;
char* omega;
int in_uso;
struct tessera* up;
struct tessera* left;
struct tessera* right;
};
typedef struct tessera tessera;
tessera* nuova;
nuova = malloc(sizeof(tessera));
l'errore:cannot convert void* to tessera*.... |
Gehur |
ho risolto mettendo un cast di tipo tessera* anche se in teoria non servirebbe...
tessera* nuova = (tessera*)malloc(sizeof(tessera));
solo che adesso ho un altro problema...
mi da errore su
strcmp(a,q->alfa);
dove a:
tessera* treeInsert(tessera* r, char a,char b,char o){
l'errore è: cannot convert 'int' to 'const char*' |
nihil |
Credo che tu abbia dimenticato un asterisco
infatti la strcmp non confronta caratteri ma stringhe.
hai dichiarato 'char a' anzicche' 'char*a'
:D |
Gehur |
ok, grazie adesso aggiusto, comuqne mi sono reso conto che ci devo pensare ancora un po su prima di scrivere spedito il codice |
danire83 |
ciao ragazzi... che struttura avete usato per la funzione domino??
Idee??? HELPPP |
Gehur |
le strutture sono liste, alberi, tabelle hash, in base a quelo che devi fare scegli la + ottimale, l'albero è la strutturura che ha buone prestazioni in tutte le operazioni.....
non so se si può dire, comunqe io credo di usare una lista |
Gehur |
ragazzi ma come si usa gcc, ho scaricato la versione da 32mb....
come si usa?? ho provato a mettere il file dentro la cartella bin, ma da dos mi dice che non trova il file |
|
|
|
|