Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我知道它是重复的,但我真的得到了不同的答案。有人说哈希表,但是对于哈希表,如果有两个名称,那么它如何是唯一的,或者它是唯一的键?
我应该使用哪种数据结构?
我也想通过电话号码和姓名查找。电话簿也很大。
电话簿可能相当大,并且不需要一次将所有项目都存储在内存中。因此,它似乎更适合存储在数据库中,并具有按名称快速检索所需的索引。
这是一个非常困惑的问题,因为它与数据结构无关。给每个条目一个唯一的 ID(查找 UUID 以获取示例)。除此之外,您使用的数据结构取决于您持有“电话簿”的数据。
使用代理键技术拥有唯一的 ID,因此您可以使用哈希表,密钥可以生成为GUID
您也可以使用普通数组,所以只是结构数组,因此数组中的索引将是您的唯一键