unordered-map

    12熱度

    2回答

    我知道clear()操作的複雜性在容器的大小上是線性的,因爲必須調用析構函數。但是原始類型(和POD)呢?看起來最好的做法是將矢量大小設置爲0,以便複雜度保持不變。 如果這是可能的,std :: unordered_map也可能嗎?

    2熱度

    2回答

    我有以下unordered_map,它將一個指針映射到類型爲int的對象的鍵類型爲int。 typedef std::unordered_map<int, Item*> ItemList; ItemList Items; 但是,在我的addItem方法中,我在編譯時收到一個奇怪的錯誤。 void ItemManager::addItem(Item *it) { int i = it

    9熱度

    1回答

    對於這兩種std::map和std::tr1::unordered_map,我從標準看出: 引用在unordered_map容器元素 所有的情況下仍然有效,即使是老調重彈了。 他們是怎麼做到的(執行方式)?它們是否將所有條目保留爲一種鏈接列表,然後散列表只是存儲指向元素的指針?

    2熱度

    1回答

    對於我的下一個任務,我需要使用一個非常大的散列;因爲我有一箇舊的編譯器,我不能使用C++ 0x std::unordered_map。理想情況下,我需要致電reserve爲大量物品提前騰出空間。我在boost::unordered_map找不到這個方法:是否有任何地方或功能達到相同? 2個關聯容器是相同的;我可以看到rehash函數和相同的構造函數來控制桶的數量,但不是關於許多元素的函數。 你能幫

    0熱度

    1回答

    我正在處理以稀疏矩陣(壓縮行)存儲的稀疏矩陣。即我的矩陣存儲: 0 x y 0 0 0 0 0 z 0 0 0 的形式: 矩陣尺寸:[3,4] 每行的偏移量:[0,2,2,3] 每一非零條目的欄:[1,2,0] 非零元素:[X,Y,Z] 我升用於散列函數的ooking,這將允許我「緩存」稀疏模式(即,前三個向量與上面的整數)。爲此,我想我需要一個好的散列函數,我可以提供給我打算使用的散列映

    0熱度

    1回答

    unordered_map<>(C++ 11)使用散列函數在內部組織它的鍵值。碰撞概率很小(1.f/std:numeric_limits<size_t>::max())。 可以使用unordered_map<>作爲堆內存管理的存儲容器嗎?也就是說,如果兩個元素混淆(通過碰撞),程序的穩定性將被破壞。在我的情況下,會導致在同一個指針上反覆調用free()。 (SIGSEGV)。 或者是僅當搜索關鍵字

    3熱度

    4回答

    我真的不明白: 我讀點,每個點有3個浮點值,從一個二進制文件。 保存此點在unordered_map 因此我嘗試創建密鑰這些3浮點值: 第一意圖: 只使用準確的比特作爲密鑰: unordered_map<string, vector<float>> points; string vecToKey(float* a) { char bytes[12]; memcpy(bytes, a, 12)

    4熱度

    1回答

    以下是我正在運行的代碼,使用g ++ 4.6和-std=c++0x std::unordered_map<int, int> um; um.insert(std::make_pair(42, 43)); um.insert(std::make_pair(342, 343)); um.insert(std::make_pair(142, 143)); um.insert(std::make

    3熱度

    2回答

    所以在概念上,我試圖創建一個指向我的對象的指針數組散列。 散列鍵是對象類型的整數,而數組是要呈現的對象的列表。 我試圖做的是: unordered_map<int, vector<Object*> > drawQueue; drawQueue.clear(); // new empty draw queue for (...) { drawQueue.at(type).push_b

    9熱度

    1回答

    背景:我從Java世界來到,而我對C++或Qt相當陌生。 爲了與unordered_map玩,我已經寫了下面的程序: #include <QtCore/QCoreApplication> #include <QtCore> #include <iostream> #include <stdio.h> #include <string> #include <unordered_map>