.dsy:it. Pages (18): « First ... « 12 13 14 15 [16] 17 18 »
Show 150 posts per page

.dsy:it. (http://www.dsy.it/forum/)
- Algoritmi e strutture dati (http://www.dsy.it/forum/forumdisplay.php?forumid=207)
-- [ALGORITMI]Progetto Zoom (http://www.dsy.it/forum/showthread.php?threadid=13146)


Posted by contezer0 on 03-10-2004 18:58:

Originally posted by Polo
anche a me dava l'errore di Dante. l'ho risolto mettendo in una variabile di tipo double il risultato di k * k * r (r è p/q)
perchè altrimente con alcuni valori ,25 4 ad esempio con k = 5,si mangiava can la variabile di tipo int il resto della virgola trasformando per esempio un 2,9 in 2.


azpita ragazzuoli!
avevo postato un metodo per fare tutto con gli interi che funziona
egregiamente, qualche pagina fa...
se e' solo per quello che non consegnate e' davvero un peccato!!!

io sto per mandare...l'ho finito da un po' ma mi sono impantanato sulla relazione :)

riassumendo....ecco i miei costi
inserimento O(lgN)
eliminazione O(lgN)
cambio riempimento O(N)
cambio risoluzione O(N)
blocchi aree e peso O(N)


Posted by ghily on 03-10-2004 19:20:

Originally posted by contezer0
azpita ragazzuoli!
avevo postato un metodo per fare tutto con gli interi che funziona
egregiamente, qualche pagina fa...
se e' solo per quello che non consegnate e' davvero un peccato!!!

io sto per mandare...l'ho finito da un po' ma mi sono impantanato sulla relazione :)


no, non era solo quello. Anche la funzione blocchi non sapevo come farla. Per area e peso ho scritto una ritondante procedura molto brutta. Insoma era olto brutto. Poi visto che avevo un 27 nella teoria mi dispiaceva perderlo con un progetto mediocre.
Amen

Chao
Roby


Posted by fasa on 03-10-2004 19:22:

io nella funzione blocchi la listA delle kcelle la scorro solo una volta....prendo il primo elemento e ricreo tramite una funzioncina il blocco(qui riscorro ovviamente la lista delle kcelle) a cui appartiene la metto in una lista d'appoggio e incremento un contatore,poi prendo la seconda kcella e vedo se c'è nella lista d'appoggio,se nn c'è richiamo ancora la funzioncina crea blocchi e la lista creata la concateno con la precedente lista appoggio e incremento ancora cont se invece c'era nn fa niente e passa alla nuova kcella.

tempo di esecuzione al max O(n^2).

l'unico problema del mio codice sono appunto i tempi di esecuzione che potrebbero essere migliorati anche se xò nn vedo come si possa migliorare inserendo solo un flag nella struttura delle celle....


Posted by fasa on 03-10-2004 19:29:

in pratica la mia soluzione ha:
-una struttura per le celle(1celle o kcelle che siano),formata da 2 var di tipo int e un puntatore di tipo celle al prox elemento
-2 liste(1 x le 1celle e 1 x le kcelle)globali
-3 var globali(1 per k 1 per p e 1 per q)
-le funzioni richieste dal problema
-2 funzioncine di supporto,1 per calcolare la lista delle kcelle quando inserisco una 1cella oppure quando cambio il fattore di riempimento oppure quando cambio la risoluzione
e 1 per crearmi la lista del blocco per la kcella richiesta.


Posted by fasa on 03-10-2004 19:30:

chi ha consegnato come ha implementato il progetto?


Posted by contezer0 on 03-10-2004 19:46:

Originally posted by fasa
chi ha consegnato come ha implementato il progetto?


io lo racconto domani...o fra 4 ore :)

comunque posso anticipare che nell'applicazione reale, su sequenze di comandi abbastanza lunghe (piu' di 10mila) il mio progetto batte anche il costo logaritmico :)

spero solo di cavarmela altrettanto bene all'orale


Posted by contezer0 on 03-10-2004 20:12:

A proposito...io ho scritto anche un generatore di input...domani c'e' qualcuno in silab? facciamo dei test incrociati di velocita' su
input giganteschi?


Posted by ghily on 03-10-2004 20:35:

Originally posted by contezer0
A proposito...io ho scritto anche un generatore di input...domani c'e' qualcuno in silab? facciamo dei test incrociati di velocita' su
input giganteschi?


noooooooooooooooooooo
ho risolto il problema........ Era sbagliata la funzione di elimina. Ora ho due ore per scrivere la funzione blocchi, il main e la relazione

ci provo lo stesso....

ma c'è anche l'inter........


Posted by contezer0 on 03-10-2004 21:20:

Originally posted by fasa
io nella funzione blocchi la listA delle kcelle la scorro solo una volta....prendo il primo elemento e ricreo tramite una funzioncina il blocco(qui riscorro ovviamente la lista delle kcelle) a cui appartiene la metto in una lista d'appoggio e incremento un contatore,poi prendo la seconda kcella e vedo se c'è nella lista d'appoggio,se nn c'è richiamo ancora la funzioncina crea blocchi e la lista creata la concateno con la precedente lista appoggio e incremento ancora cont se invece c'era nn fa niente e passa alla nuova kcella.

tempo di esecuzione al max O(n^2).


la funzione crea blocchi che complessita' ha?


Posted by fasa on 03-10-2004 21:28:

Per contezer0:La mia funzione creablocchi ha complessità O(n^2)perchè?


Posted by contezer0 on 03-10-2004 21:34:

Originally posted by fasa
Per contezer0:La mia funzione creablocchi ha complessità O(n^2)perchè?


se la chiami al piu' n volte allora la complessita' totale della funzione che conta i blocchi non e' n^3?


Posted by fasa on 03-10-2004 22:03:

mi hai fatto venire un dubbio e sono andato a ricontrollare...e hai ragione è n^3!


Posted by fasa on 03-10-2004 22:25:

una domanda...3cicli annidati che vanno tutti da 1 a n danno come costo n^3?giusto?


Posted by contezer0 on 03-10-2004 22:29:

comunque domani rilascio il codice per chiunque voglia dare un'occhiata o suggerirmi qualche miglioramento...anche comincia a venirmi un po' di nausea :)

in ogni caso...sarebbe interessante verificare i vari tempi di
esecuzione dei nostri progetti su input uguali e di dimensioni
significative...che dite? facciamo un "torneo"? se non siete
troppo gelosi dei vostri sorci e me li spedite, domani in laboratorio
faccio qualche esperimento e posto qua i risultati!
sono piuttosto curioso di far gareggiare il mio con quello(i) basato(i) su tabelle hash!


Posted by contezer0 on 03-10-2004 22:30:

Originally posted by fasa
una domanda...3cicli annidati che vanno tutti da 1 a n danno come costo n^3?giusto?


penso proprio di si...se due cicli danno n^2, ne annidi un altro e moltiplichi ancora per n


All times are GMT. The time now is 14:20. Pages (18): « First ... « 12 13 14 15 [16] 17 18 »
Show all 257 posts from this thread on one page

Powered by: vBulletin Version 2.3.1
Copyright © Jelsoft Enterprises Limited 2000 - 2002.