钩词是一个词,您可以在开头或结尾添加一个字母并组成一个新词。
我有一个相当大的单词列表(大约 170k),我想选择 5 个随机钩词。问题是我使用的方法非常慢。见下文:
Random rnd = new Random();
var hookBases = (from aw in allWords //allWords is a List<string>
from aw2 in allWords
where aw2.Contains(aw)
&& aw2.Length == aw.Length + 1
&& aw[0] == 'c'
select aw).OrderBy(t => rnd.Next()).Take(5);
当我尝试从中访问任何东西时,hookBase
它会旋转几分钟,然后我放弃并杀死它。
任何人都可以看到我尝试这样做的任何明显错误吗?有关更有效方式的任何建议?