我正在尝试提出比“暴力”方法更好的方法,但有些无从下手。
以下是一个简单的例子:
给定一组有限数量的预选字母和一个填字游戏(类似于交叉字谜),我试图找出可以使用的所有单词组合。(单词从字典数据库中检索。)
例如:
给定字母:
a,c,r,e,t,u,p,l,m,o
有多少种单词组合可以适配以下填字游戏?
当然,随着每个字母或添加到填字游戏方格中的单词数量增加,搜索时间会急剧增加。有没有更好的搜索方法建议?
以下是一个简单的例子:
给定一组有限数量的预选字母和一个填字游戏(类似于交叉字谜),我试图找出可以使用的所有单词组合。(单词从字典数据库中检索。)
例如:
给定字母:
a,c,r,e,t,u,p,l,m,o
有多少种单词组合可以适配以下填字游戏?
_
_ _ _ _
_
_
_ _ _
一个例子:
c
t r e e
e
e
p o t
当然,随着每个字母或添加到填字游戏方格中的单词数量增加,搜索时间会急剧增加。有没有更好的搜索方法建议?
sed 's|/.*||' /var/cache/postgresql/dicts/en_us.dict | egrep "^[acretuplmo]{3,5}$" | wc
将一个包含62,000个单词的字典缩减到566个单词(初步处理),但我很好奇:您使用4次e
,却没有使用任何一个a
。这样做合适吗? - user unknown