Curiosidad sobre __hash__()

Chema Cortes py en ch3m4.org
Jue Feb 5 02:28:41 CET 2009


El Thursday 05 February 2009 01:10:01 Pepe Aracil escribió:

> Creo que con un diccionario de 65536 entradas y un hash de 32 bits,
> tengo 1/65536 posibilidades de tener una colisión.
>
> Son pocas posibilidades, pero yo no utilizaría un hash de 32 bits para
> "cosas" críticas.

No entiendo porqué ha de ser un problema. Los hashes se usan para ordenar los 
elementos con el fin de hacer búsquedas mucho más rápidas. (En realidad, 
determinan el orden de los items de un diccionario, por éso parece que estén 
desordenados). Que exista una "colisión" de dos índices en un diccionario 
sólo implica que se tarde un poco más en acceder al item solicitado; pero, 
aun con todo, puede que sea menos tiempo que si se hubiera elegido longitudes 
mayores de hash.
------------ próxima parte ------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 189 bytes
Desc: This is a digitally signed message part.
URL: <http://mail.python.org/pipermail/python-es/attachments/20090205/3e3af1e2/attachment.pgp>
------------ próxima parte ------------
_______________________________________________
Lista de correo Python-es 
http://listas.aditel.org/listinfo/python-es
FAQ: http://listas.aditel.org/faqpyes


Más información sobre la lista de distribución Python-es