用于存储大型学生列表的最佳数据结构是什么?

时间:2013-09-06 02:47:07

标签: data-structures

我想写一个程序来存储学生名单(每个学生都有姓名,出生日,地址,.....),我想这个程序是很好的搜索学生的表现(比如找名字的学生) =='彼得'和地址='纽约'),并将新学生插入列表,学生列表非常大。我不知道什么是最好的数据结构。感谢您的帮助。

2 个答案:

答案 0 :(得分:2)

然后你在谈论类似的东西:

这些是高级数据结构,可以满足您的性能要求。

http://en.wikipedia.org/wiki/B-tree

  

在计算机科学中,B树是保存数据的树数据结构   排序并允许搜索,顺序访问,插入和   对数时间的删除。 B树是a的概括   二进制搜索树,其中一个节点可以有两个以上的子节点。   (Comer 1979,p.123)与自平衡二元搜索树不同,   B树针对读取和写入大块的系统进行了优化   数据。它通常用于数据库和文件系统。

http://en.wikipedia.org/wiki/Hash_table

  

在计算中,哈希表(也是哈希映射)是用于的数据结构   实现一个关联数组,一个可以映射键的结构   值。哈希表使用哈希函数来计算索引   存储桶或插槽的数组,可以从中找到正确的值。

答案 1 :(得分:0)

听起来你正在重新发明轮子"。您要求的是数据库之类的东西。您可以考虑一些内存数据库解决方案,例如H2或Derby。