给你一个单词a,如果通过交换单词中字母的顺序可以得到另外的单词b,那么定义b是a的兄弟单词。现在给你一个字典,用户输入一个单词,让你根据字典找出这个单词有多少个兄弟单词。
....
from itertools import tee,izip
from collections import defaultdict
def pairwise(iterable):
a, b = tee(iterable)
for elem in b:
break
return izip(a, b)
buf_array=[]
buf_no={}
key_from_id=0
def add_to_buf(word):
global key_from_id,buf_array
if len(word)==1:
pass
#TODO
for pos,pair in enumerate(pairwise(word)):
if len(buf_array)<pos+1:
buf_array.append(defaultdict(set))
pos_dict=buf_array[pos]
key=list(pair)
key.sort()
key="".join(key)
if key not in buf_no:
buf_no[key]=key_from_id
key_from_id+=1
key=buf_no[key]
pos_dict[key].add(word)
def find_in_buf(word):
global key_from_id,buf_array
if len(word)==1:
pass
#TODO
exist = []
for pos,pair in enumerate(pairwise(word)):
if len(buf_array)<pos+1:
return
pos_dict=buf_array[pos]
key=list(pair)
key.sort()
key="".join(key)
if key not in buf_no:
continue
key=buf_no[key]
if key not in pos_dict:
continue
exist.append(pos_dict[key])
count_dict=defaultdict(int)
for i_set in exist:
for i in i_set:
count_dict[i]+=1
result=[]
min_match = len(word)-3
for k,v in count_dict.iteritems():
if v>=min_match:
result.append(k)
return result
add_to_buf("1234")
add_to_buf("ABCD")
add_to_buf("CABD")
print find_in_buf("ACBD")
分享到:
相关推荐
考研英语相似单词记忆 六级英语宝典 考研英语相似单词记忆 六级英语宝典
主要为大家详细介绍了正则表达式查找相似单词的方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
本文实例讲述了Python查找相似单词的方法。分享给大家供大家参考。具体分析如下: 问题: 给你一个单词a,如果通过交换单词中字母的顺序可以得到另外的单词b,那么定义b是a的兄弟单词。现在给你一个字典,用户输入一...
笔记本条目中的词频-React计算一个给定单词的频率并在笔记本条目中找到它的相似单词(Levenshtein距离不超过1)。 该项目是通过引导的。可用脚本在项目目录中,可以运行:yarn start 在开发模式下运行应用程序。 ...
考研英语相似易混单词考研英语相似易混单词考研英语相似易混单词考研英语相似易混单词
发音相似的英语单词.doc
字词建议 建议使用编辑距离(Levenshtein距离)来查找词汇表中的下一个相似单词。 动机 付诸实践并比较一些编辑距离算法。
- 词嵌入以相似单词距离近的方式,将n维向量与词表中每个单词联系起来。寻找相似的单词使用的是基于距离的近邻搜索。word2vec是嵌入是通过训练神经网络从上下文中预测单词而得到的,因此,让网络预测在一系列片段中...
gre 北美范文 出国考试资料 ,包含写作的模板 ,写作考试的必备资料 。。。
2011相似易混单词记忆-李剑考研英语相似易混单词-对比记忆
2010相似易混单词记忆-李剑考研英语相似易混单词-对比记忆
语音识别使机器可以通过识别和理解过程将语音信号转换为文本。 提取特征,预测最大可能性并生成输入语音... 使用不同说话者的相似单词,系统获得了非常好的单词识别准确度结果,为92.92%,单词错误率(WER)为7.08%。
是一款专门用于单词记忆...自动联想:可自动按词形或发音进行相似词,同音词联想。 自助助记:随时添加,修改单词助记法。(详见:单词辅助记忆法) 助记法共享和下载:用户可以共享自己的助记法,也可下载其他沙友的助记法
相似易混单词,比较记忆,配有例句。这可是完整版的!
基于JavaScript开发的根据单词相似性的联想游戏项目源码+项目使用说明.zip 基于JavaScript开发的根据单词相似性的联想游戏项目源码+项目使用说明.zip 基于JavaScript开发的根据单词相似性的联想游戏项目源码+项目...
5.3 查找相似单词 5.4 查找除某个单词之外的任意单词 5.5 查找后面不跟着某个特定单词的任意单词 5.6 查找不跟在某个特定单词之后的任意单词 5.7 查找临近单词 5.8 查找重复单词 5.9 删除重复的文本行 5.10 匹配包含...