如何实现类似电话簿的应用程序

时间:2014-09-09 14:48:47

标签: c++ algorithm data-structures

我遇到一个问题,需要将数据存储在内存中供用户使用。该结构包含user_name和phone_number,我必须为100万用户存储它。现在在检索user_name是否作为输入时,它应该返回phone_number,如果给出phone_number作为输入,那么它应该返回user_name。当我在速度和存储方面进行检索时需要优化的复杂性时,实现此目的的适当数据结构是什么。

2 个答案:

答案 0 :(得分:2)

尝试boost::bimap。 它是一个双向地图(一切都是关键,也是一个价值)。

Boost.Bimap

我认为它是用两张地图实现的,但请注意内存使用情况。

答案 1 :(得分:0)

尝试使用leveldb,您可以在其中以密钥和密钥的形式存储数据。价值对。