Dsy Network www | forum | my | didattica | howto | wiki | el goog | stats | blog | dona | rappresentanti
Homepage
 Register   Calendar   Members  Faq   Search  Logout 
.dsy:it. : Powered by vBulletin version 2.3.1 .dsy:it. > Didattica > Corsi A - F > Algoritmi e strutture dati > [ALGORITMI]Progetto Zoom
Pages (18): « 1 2 3 4 [5] 6 7 8 9 » ... Last »   Last Thread   Next Thread
Author
Thread    Expand all | Contract all    Post New Thread    Post A Reply
Collapse
maynard80
.novellino.

User info:
Registered: Jul 2007
Posts: 3 (0.00 al dì)
Location: Milano (e non interland, tendo a precisare)
Corso: informatica
Anno: SESTO
Time Online: 12 Days, 14:28:38 [...]
Status: Offline

Post actions:

Edit | Report | IP: Logged

no, no la struttura non deve avere una grandezza di partenza, anche un arrey può aumentare dinamicamente, lui vuole una struttura malleabile che sia ottimizzata al problema.

__________________
msn Messenger: giamma80 at tiscali.it
ATHENA !

18-09-2004 09:13
Click Here to See the Profile for maynard80 Click here to Send maynard80 a Private Message Find more posts by maynard80 Add maynard80 to your buddy list Printer Friendly version Email this Article to a friend Reply w/Quote
Collapse
Tosh
.precettore.

User info:
Registered: Nov 2003
Posts: 94 (0.01 al dì)
Location: Bergamo
Corso: Informatica
Anno: 2° Specialistica
Time Online: 2 Days, 1:31:23 [...]
Status: Offline

Post actions:

Edit | Report | IP: Logged

nella tabella di hash memorizzereste solo le 1-celle, giusto?
Quindi data una k-cella, per capire se è occupata, bisognerebbe applicare la funzione di hash a ogni 1-cella contenuta nella k-cella. Al limite ci si potrebbe fermare quando il numero di 1-celle occupate in un certo momento della scansione è già >= pk^2/q.

18-09-2004 09:25
Click Here to See the Profile for Tosh Click here to Send Tosh a Private Message Find more posts by Tosh Add Tosh to your buddy list Printer Friendly version Email this Article to a friend Reply w/Quote
Collapse
Skilotto83
..Energia positiva...

User info:
Registered: Jun 2003
Posts: 1608 (0.19 al dì)
Location: Arconate
Corso: Informatica
Anno: LAUREATO!!!
Time Online: 15 Days, 6:32:44 [...]
Status: Offline

Post actions:

Edit | Report | IP: Logged

Originally posted by maynard80
ma non si puòridurre il piano alle celle occupate? nel senso che semplicemente le celle libere non ci sono, quindi il mio pisno "infinito" in realtà non è altro che una lista delle celle occupate ordinate secondo le loro x,y.
In questo modo una cella è occupata se esiste nella lista, libera altrimenti, le celle sono adiacenti se le loro x o y sono consecutive ecc..
Forse sto rasentando l'idiozia, ma magari semplicemente potrebbe funzionare, no?


Infatti metti solo le celle okkupate.....
Teoikmente il piano è visto kome la memoria del calcolatore....nn è infinita in pratika...ma lo è potenzialmente....poi quelle okkupate le puoi mettere dove vuoi...anke in un albero binario di ricerka...

__________________
"Why, Sir, you find no man at all intellectual who is willing to leave London.
No, Sir, when a man is tired of London, he is tired of life; for there is in London all that life can afford."
(DR SAMUEL JOHNSON 1777)

MSN andrea.poretti(at)hotmail.it

18-09-2004 10:07
Click Here to See the Profile for Skilotto83 Click here to Send Skilotto83 a Private Message Find more posts by Skilotto83 Add Skilotto83 to your buddy list Printer Friendly version Email this Article to a friend Reply w/Quote
Collapse
VdM
.simpatizzante.

User info:
Registered: Jan 2003
Posts: 9 (0.00 al dì)
Location:
Corso: Informatica
Anno: 2
Time Online: 1 Day, 15:07:06: [...]
Status: Offline

Post actions:

Edit | Report | IP: Logged
Appena letto il progetto...

Buongiorno a tutti,

per motivi di tempo & lavoro, ho cominciato a pensare al progetto solo poco fa.

Vedo dalla discussione che la struttura dati di base dovrebbe essere una hash table per le 1-celle. Ciò effettivamente garantirebbe tempi ottimali per la ricerca, l'inserimento la cancellazione di una 1-cella (entro buoni limiti, anche con risoluzione dei conflitti con liste concatenate). Per trattare le k-celle, la mia idea sarebbe di scorrere tutti gli elementi della hash table e controllando in quale k-cella cadono, ovviamente appena trovo un elemento di una k-cella non esistente creo tale k-cella.
Il problema di verificare i k-blocchi compare sia per k generico che in particolare per k=1. A questo punto sono bloccato - o la cosa è troppo semplice da non vederla o troppo complicata - sulla relazione di adiacenza. Per ciò che è scritto nel prog. mi è sembrato di capire che le k-celle (per le 1-celle è verificabile) siano adiacenti se hanno almeno un punto (suppongo di confine) in comune. Quindi, data una k-cella, questa può avere al massimo 8 k-celle adiacenti (1 lato in comune, o al più uno spigolo).
S'ha da verificare dunque per ogni k-cella le 8 posizioni adiacenti, o esiste una strategia (nn avendo potuto seguire il corso di Torelli...) più raffinata?

Grazie per eventuali risposte, e buon lavoro:)

G. "VdM"

18-09-2004 10:32
Click Here to See the Profile for VdM Click here to Send VdM a Private Message Find more posts by VdM Add VdM to your buddy list Printer Friendly version Email this Article to a friend Reply w/Quote
Collapse
Tosh
.precettore.

User info:
Registered: Nov 2003
Posts: 94 (0.01 al dì)
Location: Bergamo
Corso: Informatica
Anno: 2° Specialistica
Time Online: 2 Days, 1:31:23 [...]
Status: Offline

Post actions:

Edit | Report | IP: Logged

secondo me non conviene memorizzare infomazione riguardo alle k-celle, perchè in qualsiasi momento l'utente può modificare risoluzione, parametro di riepimento nonchè celle occupate.
L'informazione riguardo le k-celle mi sembra quindi poco riutillizabile.

18-09-2004 11:52
Click Here to See the Profile for Tosh Click here to Send Tosh a Private Message Find more posts by Tosh Add Tosh to your buddy list Printer Friendly version Email this Article to a friend Reply w/Quote
Collapse
aghito
.primate.

User info:
Registered: Jun 2003
Posts: 71 (0.01 al dì)
Location: milano
Corso: Informatica
Anno: 3
Time Online: 20:29:57 [...]
Status: Offline

Post actions:

Edit | Report | IP: Logged

La soluzione proposta da torak sembra poter funzionare però non mi convince in quanto quello scritto nel 18.4 si può applicare a qualsiasi struttura statica tipo pile code e matrici di array che sono esplicitamente vietate. Io userei una lista in cui segnare le sole 1-celle occupate..usare un albero non mi sembra utile.infatti se l’input fosse quello dell’esempio si avrebbe un albero alto n dati n input in quanto ogni elemento è sempre maggiore del precedente..

Partendo da questa lista quando ho la risoluzione k creo una nuova struttura dati tramite una funzione che facendo una scansione della lista associa ogni 1cella occupata alla rispettiva k-cella..alla fine conto le 1-celle di ogni k-cella e vedo se è occupata..per blocchi ci sto pensando…

__________________
alessandro colombini

18-09-2004 12:32
Click Here to See the Profile for aghito Click here to Send aghito a Private Message Find more posts by aghito Add aghito to your buddy list Printer Friendly version Email this Article to a friend Reply w/Quote
Collapse
Skilotto83
..Energia positiva...

User info:
Registered: Jun 2003
Posts: 1608 (0.19 al dì)
Location: Arconate
Corso: Informatica
Anno: LAUREATO!!!
Time Online: 15 Days, 6:32:44 [...]
Status: Offline

Post actions:

Edit | Report | IP: Logged

Per definizione....una K-cella esiste solo se è okkupata..giusto??

__________________
"Why, Sir, you find no man at all intellectual who is willing to leave London.
No, Sir, when a man is tired of London, he is tired of life; for there is in London all that life can afford."
(DR SAMUEL JOHNSON 1777)

MSN andrea.poretti(at)hotmail.it

18-09-2004 12:56
Click Here to See the Profile for Skilotto83 Click here to Send Skilotto83 a Private Message Find more posts by Skilotto83 Add Skilotto83 to your buddy list Printer Friendly version Email this Article to a friend Reply w/Quote
Collapse
mitnik
.illuminato.

User info:
Registered: Jun 2002
Posts: 235 (0.03 al dì)
Location:
Corso:
Anno:
Time Online: 3 Days, 4:25:25 [...]
Status: Offline

Post actions:

Edit | Report | IP: Logged

esatto. Secondo me le k-celle ci stanno "sviando" nel senso che la cosa importante sono le 1-celle che vanno memorizzate in una struttura dati, (io penso di usare una lsta) quando poi si fanno le varie operazioni tipo quella di blocchi, peso... entreranno in gioco le k-celle che in realtà sono sempre nel piano in numero infinito e dipendono dalla risoluzione.
Ok, a questo punto io creerei una struttura dati di supporto che puo essere un'altra lista. Questa avrà un puntatore a dx e uno giu, a dx si mette l'informazione della k-cella OCCUPATA e giu si mettono le 1-celle che la occupano.
Puo andare? che ne dite?

Ciao

18-09-2004 13:14
Click Here to See the Profile for mitnik Click here to Send mitnik a Private Message Find more posts by mitnik Add mitnik to your buddy list Printer Friendly version Email this Article to a friend Reply w/Quote
Collapse
torak
Renaulto muori

User info:
Registered: Dec 2002
Posts: 440 (0.05 al dì)
Location: Bollate
Corso: Informatica laurea triennale
Anno: 3
Time Online: 6 Days, 2:35:19 [...]
Status: Offline

Post actions:

Edit | Report | IP: Logged

Originally posted by aghito
La soluzione proposta da torak sembra poter funzionare però non mi convince in quanto quello scritto nel 18.4 si può applicare a qualsiasi struttura statica tipo pile code e matrici di array che sono esplicitamente vietate. Io userei una lista in cui segnare le sole 1-celle occupate..usare un albero non mi sembra utile.infatti se l’input fosse quello dell’esempio si avrebbe un albero alto n dati n input in quanto ogni elemento è sempre maggiore del precedente..

Partendo da questa lista quando ho la risoluzione k creo una nuova struttura dati tramite una funzione che facendo una scansione della lista associa ogni 1cella occupata alla rispettiva k-cella..alla fine conto le 1-celle di ogni k-cella e vedo se è occupata..per blocchi ci sto pensando…


Il 18.4 specifica che le tabelle dinamiche si possono usare con qualsiasi struttura, semplicemente per dire che il concetto è separato dal tipo di struttura dati che use. Liste e vettori non sono vietati, semplicemente hanno tempi di inserimento, ricerca e cancellazioni peggiori, quindi visto che è un esame di algoritmi si suppone utilizzi buone strutture dati.
Una tabella di hash è una buona struttura dati per rappresentare un piano, e con l'allargamento dinamico è ottima, non capisco le tue perplessità...
In più risolvere le collisioni con liste concatenate prevede la possibilità intrinseca delle tabelle di hash di fare collisioni(anche se con bassa probabilità) ma il numero di collisioni rimane basso perchè tieni sotto controllo il fattore di carico. ATTENZIONE: quella che propongo io NON è un hash a indirizzamento aperto. L'indirizzamento aperto è complesso nel caso della cancellazione, e non mi sembra il caso di complicarmi la vita così.
Considerando la bassa probabilità di collisione la tabella di hash con risoluzione delle collisioni con liste semplici è QUASI una struttura statica, quindi il tempo di ricerca inserimento e cancellazione è sempre buono. C'è una probabilità in realtà che tutti gli elementi facciano collisione, ma con una buona funzione di hash questa probabilità e talmente piccola che tutto il dsy potrebbe vincere il superenalotto più facilmente probabilmente.

18-09-2004 13:46
Click Here to See the Profile for torak Click Here to See the Blog of torak Click here to Send torak a Private Message Find more posts by torak Add torak to your buddy list Printer Friendly version Email this Article to a friend Reply w/Quote
Collapse
eskimo
.illuminato.

User info:
Registered: Jul 2003
Posts: 156 (0.02 al dì)
Location: Milano
Corso: informatica
Anno: 3datroppotempoormai
Time Online: 1 Day, 22:23:46 [...]
Status: Offline

Post actions:

Edit | Report | IP: Logged

Anche secondo me ci vogliono più strutture dati o almeno bisogna tenere le info sulle attuali k-celle. L'utente può ogni volta cambiare risoluzione o fattore riempim. e in questo caso si rifà la struttura che memorizza le k-celle.... così si fanno calcoli sulla struttura delle 1-celle ogni volta che bisogna cambiare risoluzione o fattore riemp, mentre si lavora sulle k-celle se bisogna fare calcoli tipo area, peso o blocchi.
credo che il costo di due strutture dati sia minore del costo di fare molte operazioni sempre su ste 1-celle....

il problema di come dici tu mitnik è che bisogna tenere info di una k-cella anche se ha solo una 1-cella ed è considerata libera e visto che non sai a che risoluzione stai lavorando, come distribuisci le 1-celle? lo puoi fare secondo la risoluzione corrente ma ad ogni cambio di risoluzione devi rifare proprio tutto! se sai come affrontare il prob fammi sapere che è una sol che mi piace...
:)

18-09-2004 13:47
Click Here to See the Profile for eskimo Click here to Send eskimo a Private Message Find more posts by eskimo Add eskimo to your buddy list Printer Friendly version Email this Article to a friend Reply w/Quote
Collapse
Tosh
.precettore.

User info:
Registered: Nov 2003
Posts: 94 (0.01 al dì)
Location: Bergamo
Corso: Informatica
Anno: 2° Specialistica
Time Online: 2 Days, 1:31:23 [...]
Status: Offline

Post actions:

Edit | Report | IP: Logged

per favore, alcune persone cerchino di scrivere più chiaro altrimenti non si capisce un c..zo e perdiamo tutti un casino di tempo.

18-09-2004 15:06
Click Here to See the Profile for Tosh Click here to Send Tosh a Private Message Find more posts by Tosh Add Tosh to your buddy list Printer Friendly version Email this Article to a friend Reply w/Quote
Collapse
Tosh
.precettore.

User info:
Registered: Nov 2003
Posts: 94 (0.01 al dì)
Location: Bergamo
Corso: Informatica
Anno: 2° Specialistica
Time Online: 2 Days, 1:31:23 [...]
Status: Offline

Post actions:

Edit | Report | IP: Logged
Re: Appena letto il progetto...

Originally posted by VdM
Quindi, data una k-cella, questa può avere al massimo 8 k-celle adiacenti (1 lato in comune, o al più uno spigolo).
S'ha da verificare dunque per ogni k-cella le 8 posizioni adiacenti, o esiste una strategia (nn avendo potuto seguire il corso di Torelli...) più raffinata?



non vedo una strategia radicalmente diversa.
cmq per ogni k-cella potresti esplorare meno di 8 "vicini", perchè alcuni li hai già verificati in quanto "vicini" di una k-cella già verificata precedentemente.

18-09-2004 15:19
Click Here to See the Profile for Tosh Click here to Send Tosh a Private Message Find more posts by Tosh Add Tosh to your buddy list Printer Friendly version Email this Article to a friend Reply w/Quote
Collapse
mitnik
.illuminato.

User info:
Registered: Jun 2002
Posts: 235 (0.03 al dì)
Location:
Corso:
Anno:
Time Online: 3 Days, 4:25:25 [...]
Status: Offline

Post actions:

Edit | Report | IP: Logged

cavolo è un casino verificare se una 1-cella è contenuta in una k-cella. Avete idee a proposito?

18-09-2004 16:27
Click Here to See the Profile for mitnik Click here to Send mitnik a Private Message Find more posts by mitnik Add mitnik to your buddy list Printer Friendly version Email this Article to a friend Reply w/Quote
Collapse
pincopallino
(S)chiappona

User info:
Registered: Jan 2003
Posts: 269 (0.03 al dì)
Location: Milano
Corso: Informatica
Anno: finiti gli esami
Time Online: 5 Days, 23:46:20 [...]
Status: Offline

Post actions:

Edit | Report | IP: Logged

Originally posted by mitnik
cavolo è un casino verificare se una 1-cella è contenuta in una k-cella. Avete idee a proposito?


bhe della k-cella presa in considerazione sai la coordinata in basso a sx, quindi ti calcoli le coordinate in alto a dx, e per sapere se una 1-cella è contenuta in quella k-cella basta che confronti le coordinate della 1-cella con quelle della k-cella. tipo la k-cella ha coordinate (0,0) la risoluzione è 3, per verificare se una 1-cella(x,y) è contenuta in quella k-cella basta controllare: 0<= x < 3, 0<= y < 3.....

io farei così......sonostata spiegata?

:D

__________________
"Che ne sai di un ragazzo che ti amava
che parlava e niente sapeva
eppur quel che diceva chissà perchè‚ chissà adesso è verità."

18-09-2004 19:14
Click Here to See the Profile for pincopallino Click Here to See the Blog of pincopallino Click here to Send pincopallino a Private Message Find more posts by pincopallino Add pincopallino to your buddy list Printer Friendly version Email this Article to a friend Reply w/Quote
Collapse
Skilotto83
..Energia positiva...

User info:
Registered: Jun 2003
Posts: 1608 (0.19 al dì)
Location: Arconate
Corso: Informatica
Anno: LAUREATO!!!
Time Online: 15 Days, 6:32:44 [...]
Status: Offline

Post actions:

Edit | Report | IP: Logged

Originally posted by pincopallino
bhe della k-cella presa in considerazione sai la coordinata in basso a sx, quindi ti calcoli le coordinate in alto a dx, e per sapere se una 1-cella è contenuta in quella k-cella basta che confronti le coordinate della 1-cella con quelle della k-cella. tipo la k-cella ha coordinate (0,0) la risoluzione è 3, per verificare se una 1-cella(x,y) è contenuta in quella k-cella basta controllare: 0<= x < 3, 0<= y < 3.....

io farei così......sonostata spiegata?

:D


Infatti...nulla di pu' semplice...anke io ho implementato il tutto kosi'...
:D

__________________
"Why, Sir, you find no man at all intellectual who is willing to leave London.
No, Sir, when a man is tired of London, he is tired of life; for there is in London all that life can afford."
(DR SAMUEL JOHNSON 1777)

MSN andrea.poretti(at)hotmail.it

18-09-2004 19:22
Click Here to See the Profile for Skilotto83 Click here to Send Skilotto83 a Private Message Find more posts by Skilotto83 Add Skilotto83 to your buddy list Printer Friendly version Email this Article to a friend Reply w/Quote
All times are GMT. The time now is 23:40.    Post New Thread    Post A Reply
Pages (18): « 1 2 3 4 [5] 6 7 8 9 » ... Last »   Last Thread   Next Thread
Show Printable Version | Email this Page | Subscribe to this Thread | Add to Bookmarks

Forum Jump:
Rate This Thread:

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
 

Powered by: 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
Pagina generata in 0.223 seconds (41.63% PHP - 58.37% MySQL) con 24 query.