我知道这是重复的,但我的答案确实很复杂。 有人说Hash表,但是对于哈希表,如果有两个名称那么它将如何唯一或者它与键是唯一的?
我应该使用哪种数据结构?
我想通过电话号码和姓名查询。电话簿也很大。
答案 0 :(得分:5)
电话簿可能相当大,并且不需要同时将所有项目都存储在内存中。因此,它似乎更适合在数据库中存储,并且具有按名称快速检索所需的索引。
答案 1 :(得分:0)
这是一个非常混乱的问题,因为它与数据结构无关。为每个条目指定一个唯一的ID(例如,查找UUID)。除此之外,您使用的数据结构取决于您持有“电话簿”的数据。
答案 2 :(得分:0)
使用Surrogate key技术获取唯一ID,因此您可以使用哈希表,密钥可以生成为GUID
您也可以使用普通数组,因此只是结构数组,因此数组中的索引将是您的唯一键