最适合电话簿的数据结构

时间:2013-10-10 00:04:20

标签: c# algorithm data-structures

我知道这是重复的,但我的答案确实很复杂。 有人说Hash表,但是对于哈希表,如果有两个名称那么它将如何唯一或者它与键是唯一的?

我应该使用哪种数据结构?

我想通过电话号码和姓名查询。电话簿也很大。

3 个答案:

答案 0 :(得分:5)

电话簿可能相当大,并且不需要同时将所有项目都存储在内存中。因此,它似乎更适合在数据库中存储,并且具有按名称快速检索所需的索引。

答案 1 :(得分:0)

这是一个非常混乱的问题,因为它与数据结构无关。为每个条目指定一个唯一的ID(例如,查找UUID)。除此之外,您使用的数据结构取决于您持有“电话簿”的数据。

答案 2 :(得分:0)

使用Surrogate key技术获取唯一ID,因此您可以使用哈希表,密钥可以生成为GUID

您也可以使用普通数组,因此只是结构数组,因此数组中的索引将是您的唯一键