算法——编辑距离

思路见:https://blog.csdn.net/zhonglixianyun/article/details/82150621

if __name__=='__main__':
    str1='ALGORITHM'
    str2='ALTRUISTIC'
    m=len(str1)
    n=len(str2)
    d=[[0 for j in range(n+1)] for i in range(m+1)]
    for i in range(m+1):
        d[i][0]=i
    for j in range(n+1):
        d[0][j]=j
    for i in range(1,m+1):
        for j in range(1,n+1):
            if str1[i-1]==str2[j-1]:
                d[i][j]=d[i-1][j-1]
            else:
                d[i][j]=min(d[i-1][j],d[i][j-1],d[i-1][j-1])+1
    print d[m][n]

你可能感兴趣的:(数据结构与算法)