我正在实现一个日语词典,希望能够找到快速高效的条目查找方法。词典条目本身存储在一个类中,该类包含了用日语书写的单词(可能有多个拼写方式),它们的音标发音和英语定义,分别存储在三个列表中。
起初,我使用了一种树形结构,其中每个节点表示单词中的一个字符。这个方法非常快,但是占用了很多内存。数据本身约为35MB,而树形结构本身约为130MB。此外,它也只允许从日语 -> 英语进行查找。因为需要额外的索引,所以内存是一个问题,计划将应用程序移植到Windows Phone 7。该词典包含150,000个条目。
总之,我需要做到以下几点:
- 存储定义列表
- 为日语、音标和英文含义建立三个索引
- 查询速度快(理想情况下小于1秒)
- 尽可能少地使用内存(Windows Phone 7的内存使用限制为90MB)
有什么好的想法吗?