我正在尝试建立一个数据结构,其中单个联系人可以按字母顺序存储为“名字”,“姓氏”和“电话号码”。随着时间的推移,当电话簿中出现或删除新联系人时,电话簿会更新 以下是在执行所需任务时必须牢记的两个因素。
如果我使用哈希表,尽管速度足够快,但需要很大的空间 那么如果有2 GB的空间限制,我应该使用什么数据结构?
答案 0 :(得分:1)
正如评论中所建议的那样,如果存在2 GB的硬限制,则实质上意味着需要具有恒定空间复杂度的数据结构。
不幸的是,不存在这样的数据结构。
另一方面,就时间和空间复杂性之间的权衡而言,Self-balancing binary search tree是一个非常好的数据结构。
查看此link了解各种其他数据结构的时间和空间复杂性。