Homepage  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


.dsy:it. .dsy:it. Archive > Didattica > Corsi A - F > Algoritmi e strutture dati
 
[Progetto] Incastri - Gennaio 2011
Clicca QUI per vedere il messaggio nel forum
CowBoy
Ciao a tutti,

apro questo 3d per discutere su qualsiasi aspetto relativo al progetto in oggetto(strutture dati, proposta funzioni, problemi, dubbi, ecc).

In bocca al lupo!!


Trovate il testo del progetto al seguente link:

code:
http://lonati.dsi.unimi.it/algo/1011/esami/incastri.pdf


* Valido per l'appello del 21 gennaio 2011.

* Data ultima di consegna: 14 gennaio 2011 ; le date dei colloqui saranno comunicate in seguito.

zack1988
ottimo hanno dato molto tempo.

Dazan
per che turno è il progetto?

zack1988
Per tutti e due anche sul sito di aguzzoli è presente il progetto:

http://homes.dsi.unimi.it/~aguzzoli/algo.htm

Dazan
vale pure per il serale? siccome a lezione non hanno detto nulla mi pare

zack1988
Mi sa che non è fatto con il nuovo prof. ma con il prof. Aguzzoli è un appello che riguarda l'anno scorso e non il corrente.

Dazan
ok grazie

SanJuanWolf89
salve a tutti---ho appena iniziato a fare il progetto INCASTRI
quale struttura dati consigliate di utilizzare per memorizzare le tessere??
visto che non si tratta di interi io avevo pensato a una lista concatenata

CowBoy
Per le tessere avevo pensato ad una lista bidirezionale... poi vedrò nella pratica quanto sia utile.

Guccio
Io avevo pensato ad una lista bidirezionale per la costruzione della catena e una lista unidirezionale per tenere traccia delle varie tessere create...

asgar
credo sia conveniente un grafo implementato con liste di adiacenza dove queste ultime tracciano le tessere compatibili per la catena

CowBoy
Sono d'accordo con asgar riguardo al grafo(l'ho già implementato), e visto che bisogna fare tante ricerche una struttura dati ad albero rb non sarebbe male per memorizzare le tessere.

Per le catene ci sono più soluzioni possibili, ma una volta che si arriva a formarle penso che ad ogni uno si accenderà la lampadina della soluzione migliore. :)


_______________________________________
★B u o n ★ 。 • ˚ ˚ ˛ ˚ ˛ • ♥ 。 ° ˛˚
•。 ★N a t a l e★ 。* 。 。 ° ˛˚
° 。 ° ˛˚˛ * _Π_____*。*˚ 。 ° ˛˚
˚ ˛ •˛•˚ */______/~\。˚ ˚ ˛ 。 ° ˛˚
˚ ˛ •˛• ˚ | 田田 |門| 。 ° ˛˚ 。 ° ˛˚
-----------------------------\\----------• ♥ ★ 。* 。
★* 。 • ˚˛ •˚ ˛ ˚ ˛ ˛ •**。。 ° \\*。*˚ 。 ° ˛˚
•。★˛ • 。* 。.˛ •...˛ •*。*。*。\\。˚ ˚ ˛ 。 ° ˛˚

asgar
qualcuno ha pensato a Dijkstra per formare le catene?

CowBoy
Già fatto per un calcolo generale dei cammini minimi(con 2-3heap) partendo da un simbolo qualunque. Mi manca formare le catene...

asgar
troppo difficile hehe ci rinuncio

CowBoy
Ti do ragione asgar... purtroppo le strutture dati dei grafi scritte dall'ALGOTeam non sono molto chiare. Mancano i commenti e chiarimenti del caso. Personalmente ci ho messo un po a decifrare il tutto. Praticamente ogni vertice viene rappresentato da un intero che parte da 0, con numerazione crescente. La lista/file di input deve contenere i dati in formato [id vertice partenza] [id arco(id vertice al quale collego il vertice di partenza)] [costo/distanza].
Il codice inoltre richiede che l'input venga letto da un file, ma si può modificare per far sì che legga una lista o altro...

Penso che sarebbe di grande aiuto se un giorno chi ha scritto il codice, aggiungesse anche dei commenti o delle descrizioni.

asgar
hum dijkstra non credo serva in ogni caso, basta visitare in ampiezza per trovare le catene

CowBoy
Vero, la visita in ampiezza... ho fatto male a non frequentare quest'anno. Ho provato ad implementarla e funziona bene con i primi test.
Dijkstra basico con complessità O(n^2) mi funzionava bene ma quando ho cambiato implementazione usando gli 2-3heap per scendere a O(m+nlogn), il risultato finale era errato. Grazie asgar per questo suggerimento!

asgar
mah per ora più che vedere il tempo di calcolo o lo spazio occupato cerco di farlo funzionare hehe.. in effetti il mio fra cicli e non cicli ci mette un sacco a calcolare le catene. però si può sempre risolvere aggiungendo qualche puntatore ai nodi del grafo quindi per ora non me ne preoccupo

Guccio
Scusate ma voi usando i grafi come fate a ricavarvi il cammino più breve?

CowBoy
Come diceva asgar, facendo una ricerca bfs... oppure, se vuoi farti del male, usando dijkstra.

asgar
qualcuno ha già fatto le sottostringhe massime o la cacofonia?

Guccio
Originally posted by CowBoy
Come diceva asgar, facendo una ricerca bfs... oppure, se vuoi farti del male, usando dijkstra.

Si ma così viene esplorato il grafo...ma per mantenere traccia di tutti i cammini possibili per poter scegliere il più breve?

Bomb
li memo rizzi tutti e poi tieni quello che fa meno passi?
mah...mi sembra un po' dispendioso...però dijkstra lo è ancora di più...:mad

CowBoy
Originally posted by asgar
qualcuno ha già fatto le sottostringhe massime o la cacofonia?


Usa un algoritmo chiamato "La sotto sequenza comune massima"(LCS - Longest common subsequence/substring)... ci sono vari modi di implementarlo. Il peggiore è quello ricorsivo(tempo esponenziale). Quello dinamico scende a O(n*m)... se proprio vuoi strafare ci sono alcune tecniche per renderlo ancora più veloce.

Ciao!

CowBoy
... up

asgar
Originally posted by CowBoy
Usa un algoritmo chiamato "La sotto sequenza comune massima"(LCS - Longest common subsequence/substring)... ci sono vari modi di implementarlo. Il peggiore è quello ricorsivo(tempo esponenziale). Quello dinamico scende a O(n*m)... se proprio vuoi strafare ci sono alcune tecniche per renderlo ancora più veloce.

Ciao!

mm non avevo visto il post.. ne ho fatto uno io che dipende dalla lunghezza delle due stringhe quindi credo dell'ordine di n*m, credo terrò quello, grazie cmq :)

CowBoy
Direi che ormai dovrei esserci... se qualcuno ha preparato file per testare il codice, posti pure qualche esempio per vedere se ci sono comportamenti anomali e sistemarli...

CowBoy
ATTENZIONE!!! Leggete il seguente avviso:

7 gennaio 2011
La traccia del progetto "incastri", valida per l'appello di gennaio, presenta un errore all'interno dell'esempio conclusivo. L'istruzione "m gatto topo" deve essere ignorata in quando non esistono tessere con nome "gatto" quindi la riga di output "to" non va stampata.

http://lonati.dsi.unimi.it/algo/1011/?page=avvisi

xSharKMaNx
Ciao a tutti,
volevo chiedere a chi ha frequentato il lab di algo con la Prof. Lonati come si è trovato.

Vedendo le sue slide sul JLI devo dire che sono fatte davvero bene.

Per la teoria cosa state utilizzando come materiale?

Grazie a tutti

Guccio
Il laboratorio con la Lonati vale la pena seguirlo, lei è molto preparata. Goldwurm è una chiavica...non spiega tanto bene ed è un po' soporifero; comunque non spiega con le slide fa tutto alla lavagna. On line se non sbaglio sul suo sito trovi delle dispense fatte da lui su quello che spiega, anche se non sono nello stesso ordine in cui espone le cose a lezione. Spero di esserti stato d'aiuto.

CowBoy
Controllate la posta in arrivo!

CowBoy
Qualcuno ha fatto la discussione del progetto con Lonati?! A grandi linee come viene svolto, cosa vi ha chiesto?

asgar
Originally posted by CowBoy
Qualcuno ha fatto la discussione del progetto con Lonati?! A grandi linee come viene svolto, cosa vi ha chiesto?

chiede di spiegare le funzioni principali e vi fa ragionare su dei modi per migliorarle

Powered by: vbHome (lite) v4.1 and vBulletin v2.3.1 - Copyright ©2000 - 2002, Jelsoft Enterprises Limited
Mantained by dsy crew (email) | Collabora con noi | Segnalaci un bug | Archive | Regolamento |Licenze | Thanks | Syndacate