编辑距离有插入,删除,修改操作
def generate_edit_one(str):
"""
给定一个字符串,生成编辑距离为1的字符串列表。
"""
letters = 'abcdefghijklmnopqrstuvwxyz'
splits = [(str[:i], str[i:])for i in range(len(str)+1)]
print(splits)
inserts = [L + c + R for L, R in splits for c in letters]
print(inserts)
deletes = [L + R[1:] for L, R in splits if R]
replaces = [L + c + R[1:] for L, R in splits if R for c in letters]
#return set(splits)
return set(inserts + deletes + replaces)
print (len(generate_edit_one("apple")))