寻找随机英语单词的最佳方法

时间:2013-05-06 18:27:34

标签: android random arraylist

我正在寻找使用Android应用程序查找随机英语单词的最佳方法。有没有比使用res /文件夹中的所有单词保存.txt文件更好的方法,例如

http://www.stanford.edu/class/cs106l/assignments/dictionary.txt

然后将其导入ArrayList?我正在开发的应用程序会经常搜索单词,例如以字母“A”或“Be”开头的随机单词。我担心这个函数的内存和运行时间。

2 个答案:

答案 0 :(得分:2)

创建一个包含所有单词的SQLite数据库。然后,您可以使用SQL查询该数据库,以使您的随机单词与各种起始字母匹配。

SQLite详细信息:http://developer.android.com/reference/android/database/sqlite/package-summary.html

查找有关在SQL中使用LIKE进行文本匹配的文档。

示例:http://www.techonthenet.com/sql/like.php

要获得随机性,请找到符合条件的所有字词。得到它们的数量(称之为'n'),然后在1和n之间选择一个随机数'x',并取第x个记录。

答案 1 :(得分:0)

使用here所述的前缀树(或Trie)。

它极其高效,因为所有单词开头只存储一次。