Python基于动态规划算法计算单词距离
本文实例讲述了Python基于动态规划算法计算单词距离。分享给大家供大家参考。具体如下:
#!/usr/bin/envpython
#coding=utf-8
defword_distance(m,n):
"""computetheleaststepsnumbertoconvertmtonbyinsert,delete,replace.
动态规划算法,计算单词距离
>>>printword_distance("abc","abec")
1
>>>printword_distance("ababec","abc")
3
"""
len_1=lambdax:len(x)+1
c=[[i]foriinrange(0,len_1(m))]
c[0]=[jforjinrange(0,len_1(n))]
foriinrange(0,len(m)):
#printi,'',
forjinrange(0,len(n)):
c[i+1].append(
min(
c[i][j+1]+1,#插入n[j]
c[i+1][j]+1,#删除m[j]
c[i][j]+(0ifm[i]==n[j]else1)#改
)
)
#printc[i+1][j+1],m[i],n[j],'',
#print''
returnc[-1][-1]
importdoctest
doctest.testmod()
raw_input("Success!")
希望本文所述对大家的Python程序设计有所帮助。
热门推荐
1 训练狗狗憋尿
2 狗狗追踪训练
3 狗狗训练要多少钱
5 深圳狗狗训练
6 训练狗狗唤回
7 狗狗叫怎么训练
8 狗狗训练班
10 狗狗社会化训练
11 狗狗叫回训练
12 广州狗狗训练学校
13 狗狗训练躺下
14 狗狗随行训练
15 训练狗狗巡回
16 狗狗要怎么训练
17 狗狗喂食训练
18 训练狗狗躺下