universal-hashing

    3熱度

    1回答

    我所知道的是: 一致性哈希法:統一的分佈式存儲系統 錐散列:非均勻分佈式存儲系統 我想知道: 它是如何作品? 它有什麼用? 這兩種哈希有什麼區別? 我無法理解這兩者之間的區別。請有人幫我這個!

    1熱度

    2回答

    我想了解通用哈希如何工作。它被定義爲h(x) = [(a*x + b) mod p] mod m其中a,b - 隨機數,m - 散列表的大小,x - 密鑰和p - 素數。例如,我有幾個不同的鑰匙: 92333 23347 20313 而且爲了創建一個通用散列函數我一定要到以下幾點: Let a = 10, b = 22, p = 313, m = 100 h(92333) = [(10

    4熱度

    1回答

    以我目前的理解通用散列是其中的哈希函數是隨機選擇在運行時,爲了保證合理的性能對於任何一種輸入的方法。 我明白,我們可能爲了防止有人故意選擇惡意輸入操作(確定性哈希函數的可能性知道)做到這一點。 我的問題是這樣的:它是不是真的,我們仍然需要保證的關鍵將每次我們哈希它的時候被映射到相同的地址?例如,如果我們想要檢索信息,但散列函數是隨機選擇的,那麼我們如何保證我們能夠回到我們的數據呢?

    0熱度

    1回答

    如果你不熟悉universal hashing,它主要是試圖保證少量的碰撞(相反,使用普通的舊模),使用一些相當簡單的數學涉及隨機性。問題是,它並沒有爲我工作: size_t hash_modulo(const int value) { return (size_t) (value % TABLE_SIZE); } // prime 491 is used because its

    1熱度

    2回答

    嗨,我正在閱讀有關CLRS上通用哈希的章節。 在頁234 推論11.4 通過在 表具有m時隙鏈接使用通用散列和衝突解決,它需要的預期時間西塔(N),以處理任何 序列INSERT,SEARCH和DELETE操作包含O(m) INSERT操作。 我有點想法,但我很難理解這個英語句子。 「包含O(m)INSERT操作」的結尾是什麼意思? 這是否意味着n = O(m)插入已經執行。然後,....我不知道。

    -3熱度

    1回答

    im使用布隆過濾器模擬集合交點近似。我已經嘗試了很多簡單的散列函數來將值散列到過濾器。但它不擅長避免碰撞。所以有人提出了一個通用的散列函數。但我不知道它是如何工作的。我的程序被設計爲只將密鑰傳遞給散列函數,散列函數返回散列。任何人都可以幫助我的代碼? 謝謝