2015-03-02 48 views
2

我正在尋找的東西,以大多數教科書解釋它的方式實現一個哈希表,以恆定的時間插入/刪除/搜索。我知道std :: unordered_map,但是我正在尋找一些沒有C++ 11的工具。我知道如何從頭開始創建課程,但那不是我想要的。在C++(pre-C++ 11)中是否存在散列表?

+4

'std :: tr1 :: unordered_map'。 – Rapptz 2015-03-02 04:53:46

回答

3

Boost庫是要走的路。 Boost的許多創始人都是C++標準委員會成員,Boost的庫/ API經常進入標準。

boost::unordered_map將是你想要的。它的API非常類似於C++ 11的std::unordered_map。底層表示是一個分段哈希表(很像unordered_map)。

0

在C++ 11之前,哈希不是C++標準的一部分,但大多數STL實現hash_sethash_map。你可以通過簡單的包含頭文件來使用它們。但首先你必須確保你的編譯器支持它。