hash-function

    4熱度

    1回答

    當計算unordered_set中元素的散列值時,它將與其他 - 不同元素一起放入「存儲區」中,但散列值相同。 我的經驗是,這種桶中的元素存儲在一個單獨的鏈表中。意思是,當在一個具有壞散列函數的桶內進行搜索時,它會得到非常慢的。 單向鏈表是標準的要求還是隻有一個可能的實現?是否可以使用unordered_set和set作爲桶?

    1熱度

    1回答

    我需要構造一個完美的散列函數,它將一組整數[1..2^64-1]映射到自身(此函數實際上是一些複雜的排列)。 爲了解釋這個問題,假設我們在數據庫中有整數主鍵序列。我們需要以一種方式顯示構建一個數字(我們向用戶顯示),其中數字與主鍵相對應,儘可能遠離彼此。 所以,基本上我需要一個大集合整數的雙射函數。例如。 1 - > X1 2 - > X3 3 - > X3 ... 2^64 - 1 - > X2

    2熱度

    1回答

    我正在使用使用緩存的我的網站。這是給下面的錯誤: "Control/space characters not allowed (key="\xebw\x1b}\xae\xa3\xb8\x18\xc4\xb5\xce\x0c%\x13'\xed")". ,我現在用的代碼如下: def hash_key(key, key_prefix, version): new_key = '%s :

    0熱度

    1回答

    我已經在C++中實現了哈希映射。 一切工作正常,除了哈希函數。 我有一個模板類的元素,以便我可以使用各種變量類型的哈希映射。 這是我的代碼元素。 template <class KeyType, class ValType> class MapElem { public: typedef KeyType ktype; typedef ValType vtype;

    1熱度

    1回答

    有什麼文件有「拒絕」,「接受」或「正在討論」狀態的列表或表格? 我特別感興趣的是,如果有任何希望爲N3983的元組哈希被接受爲C++ 1z(或者如果它已經在C++ 14中,我不認爲)。

    0熱度

    1回答

    我正在學習哈希表,哈希映射等。我剛剛在C中實現了一個哈希表,操作如下:操作:insert(HTable, key),delete(HTable, key),initialize(HTable)和search(HTable, key)。 我想問一下。由於在一個(適當的)哈希表中,計算出的散列索引可能非常大,這是不是意味着消耗的空間會像INT_MAX(當然仍然是O(n))或更多?我的意思是給定我們想要

    0熱度

    1回答

    衆所周知,Redis使用CRC16算法將密鑰映射到哈希槽。假定crc使用某種「分佈」來將鍵分配給節點是否安全?如果是的話,什麼樣的分佈? 此外,通過每個密鑰上的散列函數,我們可以確保我們在關於密鑰數量的節點上平均加載負載嗎?假設客戶端在3個節點集羣中隨機生成3000個插入。之後,密鑰將均勻分佈在節點(M1≈1000,M2≈1000,M3≈1000)? 爲了測試這些,我創建在python的函數: l

    0熱度

    1回答

    返回哈希可以返回相同的指數不同的ID值的函數: hash(id) = id%ARRAY_SIZE 有沒有辦法有哈希函數是雙射。我想到: hash(id) = id 但我沒有連續的id值。有人有更好的解決方案嗎?

    1熱度

    1回答

    我一直試圖將char *類型的c字符串轉換爲長整數,以便將轉換後的數字用作哈希函數的鍵值。我嘗試了atol和strtol函數,並且每次使用不同的字符串調用函數時都返回相同的散列值。以下是我的散列函數。 int h_function(char* key,h_table* table){ int i; char* key_i=key; char str[14];

    0熱度

    1回答

    給定一個散列值,是否有可能猜測用於生成它的散列函數? 例如,假設9b35a8503abcecadfb85726cfefb99a9由MD5或SHA-1生成(如果它是SHA-1,假設它只是它的前16個字節),並且內容是純英文文本。是否有任何提示可以使MD5比SHA-1更容易產生提示,反之亦然?