存储名字和姓氏的算法和数据结构

标签 algorithm language-agnostic data-structures contacts binary-search-tree

有没有一种有效的方法可以在数据结构中存储名字和姓氏,以便我们可以使用名字或姓氏进行查找?我会考虑使用名字的二叉搜索树。搜索名字会很有效。但是在尝试搜索姓氏时效率不高。我们也可以考虑多一个带姓氏的 BST。有什么想法可以有效地实现它吗?

如果问题是什么

字符串名称[] = { "A B","C D"};

一个要求是能够在运行时动态扩展这个目录, 没有持久存储。该目录最终可以增长到数百个或 数千个名字,并且必须可以按名字或姓氏进行搜索。

现在我们无法存储哈希表。有什么想法吗?

最佳答案

两个哈希表:一个从名字到人,一个从姓到人。

简单是最好的。

关于存储名字和姓氏的算法和数据结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8596294/

相关文章:

c - 使用 qsort 对字符串进行排序

c++ - 指向类的指针

data-structures - log(n) 与常数时间

java - 查找二分查找失败的案例

c++ - 选择满足条件的特定对象

ruby - 通过 MD5 哈希算法运行哈希

math - float 学有问题吗?

python - 为什么两种寻找素数的算法在速度上相差如此之大,即使它们看起来迭代次数相同?

language-agnostic - 一个向前的单词和向后不同的单词的代码

language-agnostic - 基准测试:什么时候可以停止测量?