Results 1 to 5 of 5

Thread: Domanda hashing

  1. #1
    Petty Officer 1st Class
    Join Date
    Feb 2009
    Location
    bla
    Posts
    873

    Default Domanda hashing

    Ragazzi temo di non aver capito una sega di hashing, qualcuno mi può risolvere sto problema e soprattutto motivarmi la risposta ?

    Si consideri una tabella di hash con 12 posizioni. Si vuole gestirla usando il double hashing h1(n)+i*h2(n) (con n numero da inserire e i numero del tentativo).

    Dire quale tra queste coppie di funzioni si adotterebbe motivando la risposta

    A) h1=n mod 14 e h2=n mod 7
    B) h1=n mod 13 e h2=n mod 7

  2. #2
    Chief Petty Officer Patryz's Avatar
    Join Date
    Jun 2007
    Location
    Torino
    Posts
    1.106

    Default

    Strana domanda.. L'unica cosa che mi viene in mente è che essendo 14 multiplo di 7, nella divisione n/14 e n/7 si avrebbero dei numeri che possono aumentare la possibilità di collisioni... Le tabelle di hash le ho studiate e utilizzate parecchio ma generalmente le funzioni di hash non le fai tu perchè sono decisamente complicate da fare
    "When a man with a joypad meets a man with a mouse, the man with the joypad is a dead man"
    Now on: i5 3570k with Noctua NH-D14, 16GB DDR3 Corsair Vengeance , AsRock Z77 Extreme4, OCZ Vertex 4 256GB, Corsair Obsidian 550D Black, Sapphire 7970 Oc, Asus Xonar Essence ST with Corsair AX750 Gold.

  3. #3
    Lieutenant Commander Axet's Avatar
    Join Date
    Sep 2003
    Location
    Ginevra
    Posts
    33.807

    Default

    Direi la seconda, hai molte meno collisioni.
    Se n è un multiplo di 14 conseguentemente sarà multiplo di 7. Allora avremo che sia h1 che h2 ritorneranno, dato n, il valore 0, che ovviamente porta a un valore della funzione pari a 0 indipendentemente da i.
    13 invece non essendo multiplo di 7 non presenta questo problema.

    Nota che non mi ricordo una ceppa, le hast table che ho usato erano già implementate, ma mi pare logica la risposta.

    I'm no hero. Never was. Never will be.
    -----
    Soul of the mind, key to life's ether
    Soul of the lost, withdrawn from its vessel
    May strength be granted so the world might be mended...
    So the world might be mended...

  4. #4
    Petty Officer 1st Class
    Join Date
    Feb 2009
    Location
    bla
    Posts
    873

    Default

    Si era l'unica cosa che mi era venuta in mente visto che il problema era abbastanza insolito come tipologia..inoltre in double hashing ho sempre usato le 2 funzioni con lo stesso mod.
    Grazie ragazzi

  5. #5
    Lieutenant Junior Grade Eltarion's Avatar
    Join Date
    Dec 2004
    Location
    Venaria
    Posts
    4.085

    Default

    sottoscrivo! la funzione migliore da utilizzare è quella con meno collisioni
    Realm Of Trollers
    while ( ! ( succeed = try() ) );
    Spoiler

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
[Output: 52.01 Kb. compressed to 43.88 Kb. by saving 8.13 Kb. (15.63%)]