我有100万个Student对象的Collection [任何实现]。
学生对象包含名字,姓氏和编号。
卷号是唯一的。
名和姓可以重复。
我需要编写一个有效的方法,以名字作为参数,并搜索所有包含输入参数的对象作为名字。
存储一百万个对象的最佳数据结构应该是什么?查找具有匹配名字的对象的最快算法是什么?
答案 0 :(得分:1)
最快的算法将主要取决于{`
import Calendar from './Calendar'
const config = {
api_key: 1234,
calendars: [{ name: 'demo', url: 'example@group.calendar.google.com' }]
}
`}
的基本表示形式。
Hashmap可能是您完成任务的理想人选。例如将名作为键,将学生作为值的哈希图。
例如(Java)
Collection[Any implementation]
另一种方法是,您还可以保留{strong>排序的(按名字)列表/* first name -> list of students with first name */
Map<String, List<Student>> students = new HashMap<>();
并实现dichotomic search。