首页 > 编程 > Python > 正文

Python基于动态规划算法计算单词距离

2019-11-25 17:07:45
字体:
来源:转载
供稿:网友

本文实例讲述了Python基于动态规划算法计算单词距离。分享给大家供大家参考。具体如下:

#!/usr/bin/env python#coding=utf-8def word_distance(m,n):  """compute the least steps number to convert m to n by insert , delete , replace .  动态规划算法,计算单词距离  >>> print word_distance("abc","abec")  1  >>> print word_distance("ababec","abc")  3  """  len_1=lambda x:len(x)+1  c=[[i] for i in range(0,len_1(m)) ]  c[0]=[j for j in range(0,len_1(n))]  for i in range(0,len(m)):  #  print i,' ',    for j in range(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] + (0 if m[i]==n[j] else 1 )#改        )      )  #    print c[i+1][j+1],m[i],n[j],' ',  #  print ''  return c[-1][-1]import doctestdoctest.testmod()raw_input("Success!")

希望本文所述对大家的Python程序设计有所帮助。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表