Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/algorithm/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Algorithm 在手机中存储联系人的最佳方式_Algorithm_Data Structures - Fatal编程技术网

Algorithm 在手机中存储联系人的最佳方式

Algorithm 在手机中存储联系人的最佳方式,algorithm,data-structures,Algorithm,Data Structures,这基本上是一个采访问题 在电话目录中存储电话号码/联系人姓名的最佳数据结构是什么。我们应该能够从名称中检索数字,反之亦然 我听说的解决方案很少: 1. Create 2 Hashmaps , one maps number to name,other name to number. 2. Create 2 Tries . Uses lesser memory than above. 还有什么能做得更好,主要是空间复杂性。我认为使用两次尝试是最好的选择,从空间灵活性的角度来看。因为一旦你有了一

这基本上是一个采访问题

在电话目录中存储电话号码/联系人姓名的最佳数据结构是什么。我们应该能够从名称中检索数字,反之亦然

我听说的解决方案很少:

1. Create 2 Hashmaps , one maps number to name,other name to number. 
2. Create 2 Tries . Uses lesser memory than above.

还有什么能做得更好,主要是空间复杂性。

我认为使用两次尝试是最好的选择,从空间灵活性的角度来看。因为一旦你有了一个哈希表,你就必须处理冲突。

数据库怎么样,它有最常用的索引来获取一个人的号码(姓名、实际号码)?@Makoto:有可能用手机吗?@Spandan:如果你感兴趣的只是空间复杂性,那你再也没有比一次旅行更好的了。事实上,我认为你是在为树木而错过森林。首先,是的-现在大多数手机都使用SQLite。第二,即使你没有打电话,使用数据库也是最有意义的;在平面文件中记录一个人的联系信息对扫描、解析和使用都是低效的。@Makoto:你能给出你的数据库方法的答案吗。