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 > [SERALE] - Quicksort
  Last Thread   Next Thread
Author
Thread    Expand all | Contract all    Post New Thread    Post A Reply
Collapse
xSharKMaNx
un gioco della follia

User info:
Registered: Sep 2007
Posts: 1477 (0.23 al dì)
Location:
Corso: F49
Anno: Laureato
Time Online: 10 Days, 17:15:29 [...]
Status: Offline

Post actions:

Edit | Report | IP: Logged
[SERALE] - Quicksort

Ciao ragazzi,
qualcuno ha capito qualcosa della lezione di ieri 10.10.2011 ?

L'ultima parte... quando ha cominciato a parlare di varianza, probabilità etc... io mi son perso alla grande.

Ciao a tutti
Daniele

__________________
Perché, mentre il manganello può sostituire il dialogo, le parole non perderanno mai il loro potere; perché esse sono il mezzo per giungere al significato, e per coloro che vorranno ascoltare, all'affermazione della verità. E la verità è che c'è qualcosa di terribilmente marcio in questo paese. (V)

I popoli non dovrebbero aver paura dei propri governi, sono i governi che dovrebbero aver paura dei popoli. (T.J)

11-11-2011 12:10
Click Here to See the Profile for xSharKMaNx Click here to Send xSharKMaNx a Private Message Find more posts by xSharKMaNx Add xSharKMaNx to your buddy list Printer Friendly version Email this Article to a friend Reply w/Quote
Collapse
zack1988
.primate.

User info:
Registered: Oct 2007
Posts: 75 (0.01 al dì)
Location: Milano
Corso: Informatica
Anno: 1
Time Online: 2 Days, 2:43:36 [...]
Status: Offline

Post actions:

Edit | Report | IP: Logged

Io ero a bocca aperta.

11-11-2011 12:32
Click Here to See the Profile for zack1988 Click here to Send zack1988 a Private Message Find more posts by zack1988 Add zack1988 to your buddy list Printer Friendly version Email this Article to a friend Reply w/Quote
Collapse
lektronar
.fedelissimo.

User info:
Registered: May 2010
Posts: 59 (0.01 al dì)
Location: Arese
Corso: Informatica
Anno: 3
Time Online: 6:09:54 [...]
Status: Offline

Post actions:

Edit | Report | IP: Logged

speechless

23-11-2011 04:03
Click Here to See the Profile for lektronar Click here to Send lektronar a Private Message Find more posts by lektronar Add lektronar to your buddy list Printer Friendly version Email this Article to a friend Reply w/Quote
Collapse
xSharKMaNx
un gioco della follia

User info:
Registered: Sep 2007
Posts: 1477 (0.23 al dì)
Location:
Corso: F49
Anno: Laureato
Time Online: 10 Days, 17:15:29 [...]
Status: Offline

Post actions:

Edit | Report | IP: Logged

Chiedo l'aiuto del pubblico...

Hash Table

Oltre ad aver capito che è un array di liste quando ha cominciato a parlare di formule io mi sono perso....

__________________
Perché, mentre il manganello può sostituire il dialogo, le parole non perderanno mai il loro potere; perché esse sono il mezzo per giungere al significato, e per coloro che vorranno ascoltare, all'affermazione della verità. E la verità è che c'è qualcosa di terribilmente marcio in questo paese. (V)

I popoli non dovrebbero aver paura dei propri governi, sono i governi che dovrebbero aver paura dei popoli. (T.J)

24-11-2011 12:05
Click Here to See the Profile for xSharKMaNx Click here to Send xSharKMaNx a Private Message Find more posts by xSharKMaNx Add xSharKMaNx to your buddy list Printer Friendly version Email this Article to a friend Reply w/Quote
Collapse
panzone
.primate.

User info:
Registered: Sep 2010
Posts: 63 (0.01 al dì)
Location: Vigevano
Corso: Informatica
Anno: 2
Time Online: 16:10:18 [...]
Status: Offline

Post actions:

Edit | Report | IP: Logged

Originally posted by xSharKMaNx
Chiedo l'aiuto del pubblico...

Hash Table

Oltre ad aver capito che è un array di liste quando ha cominciato a parlare di formule io mi sono perso....


E' il problema di far spiegare ad un matematico certe cose :D Per carità, sicuramente interessante ed utile, ma se sei ad algoritmi significa che un idea di quello fatto a continuo e discreta ce l' hai ed è inutile esser cosi prolissi.

Un hash table è, per l' appunto, un array di liste gestite tramite hash. Per hash si intende il risultato di una funzione che, dato in input un elemento, questa genera un codice, un qualcosa che identifica il mio oggetto ( solitamente nelle implementazioni si utilizza un numero, per tutta una serie di motivi ).

Esempio semplicissimo di funzione hash: ho una stringa. Il suo valore di hash è dato dalla somma del valore ASCII dei suoi caratteri. Quindi, usando questa funzione, posso ottenere un valore che mi permette di identificare la stringa.

Ora, le hash table. Come abbiamo visto dalla mia funzione hash precedente, ottengo un numero. E se usassi questo numero come ( ad esempio ) l' indice di un array per salvare la mia stringa ? Se ci pensi sarebbe molto comodo in fase di ricerca: difatti, visto che la stringa verrà salvata solo in quella posizione, indicata dal mio hash, per la ricerca non dovrò scorrere tutto il vettore, ma semplicemente controllare l' indice ( ricavabile usando la funzione di hash ) per vedere se è presente ! Come vedi, dunque, il tempo di ricerca di un vettore tende ad essere costante.



Ora, gli svantaggi dell' hashing: il primo punto è che le hash table si prendono un casino di memoria: non è detto difatti che userai tutti gli indici in maniera ordinata e dunque potresti trovarti vettori immensi con immense aree vuote.

Esempio: ho la stringa "ciao", che è, usando la funzione di hashing detta prima, il valore 412. Questo significa che devo allocare almeno 412 posizioni, ma le 411 posizioni precedenti ( al momento e molto probabilmente ) resteranno vuote :D

Poi, altro svantaggio ( ed è il motivo per cui si usano array di liste ): le funzioni hash posson generare lo stesso valore con input diversi. Basta vedere l' esempio precedente: e se dopo "ciao" volessi salvare la parola "bibo", che anche lei con la funzione precedente ha valore 412 ? Semplicemente, usando un array di liste, posso salvare entrambe le stringe in una lista presente all' indirizzo 412 del vettore. In fase di ricerca vado direttamente in quella posizione e scorro la lista ( che sarà sicuramente più veloce che scorrere l' intero vettore per vedere se le mie stringhe son presenti).

Questo cosa significa ? Che la hash table avranno pure tempo costante di ricerca, tuttavia il loro utilizzo deve essere ben giustificato dalla mole di dati che si andranno ad inserire e dalla stabilità della funzione hash ( se questa genera facilmente output uguali, se questa genera output il più possibile distribuiti ecc. ecc. ).

Last edited by panzone on 07-01-2012 at 22:02

07-01-2012 21:57
Click Here to See the Profile for panzone Click here to Send panzone a Private Message Find more posts by panzone Add panzone to your buddy list Printer Friendly version Email this Article to a friend Reply w/Quote
All times are GMT. The time now is 22:53.    Post New Thread    Post A Reply
  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.037 seconds (66.75% PHP - 33.25% MySQL) con 28 query.