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


Posted in Python onJuly 25, 2015

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

#!/usr/bin/env python
#coding=utf-8
def 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 doctest
doctest.testmod()
raw_input("Success!")

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

Python 相关文章推荐
python网络编程学习笔记(四):域名系统
Jun 09 Python
Python pickle模块用法实例
Apr 14 Python
在Python的struct模块中进行数据格式转换的方法
Jun 17 Python
Python编程判断一个正整数是否为素数的方法
Apr 14 Python
Python实现简单过滤文本段的方法
May 24 Python
Python将多份excel表格整理成一份表格
Jan 03 Python
python3实现字符串的全排列的方法(无重复字符)
Jul 07 Python
对python中数据集划分函数StratifiedShuffleSplit的使用详解
Dec 11 Python
使用 Visual Studio Code(VSCode)搭建简单的Python+Django开发环境的方法步骤
Dec 17 Python
python hbase读取数据发送kafka的方法
Dec 27 Python
解决python中画图时x,y轴名称出现中文乱码的问题
Jan 29 Python
python的变量和简单数字类型详解
Sep 15 Python
Python中Django框架利用url来控制登录的方法
Jul 25 #Python
Python实现模拟登录及表单提交的方法
Jul 25 #Python
Python基于有道实现英汉字典功能
Jul 25 #Python
Python实现简单的代理服务器
Jul 25 #Python
Python实现截屏的函数
Jul 25 #Python
Python基于PycURL自动处理cookie的方法
Jul 25 #Python
Python基于PycURL实现POST的方法
Jul 25 #Python
You might like
PHP输出数组中重名的元素的几种处理方法
2012/09/05 PHP
PHP验证码类ValidateCode解析
2017/01/07 PHP
对象无length属性时IE6/IE7中无法将其转换成伪数组(ArrayLike)
2011/07/31 Javascript
yepnope.js 异步加载资源文件
2011/09/08 Javascript
javascript实现禁止复制网页内容
2014/12/16 Javascript
javascript实现网页屏蔽Backspace事件,输入框不屏蔽
2015/07/21 Javascript
jQuery遮罩层效果实例分析
2016/01/14 Javascript
JavaScript面向对象程序设计教程
2016/03/29 Javascript
Javascript iframe交互并兼容各种浏览器的解决方法
2016/07/12 Javascript
Javascript中构造函数要注意的一些坑
2017/01/23 Javascript
js return返回多个值,通过对象的属性访问方法
2017/02/21 Javascript
Vue.js学习笔记之修饰符详解
2017/07/25 Javascript
利用JS实现scroll自定义滚动效果详解
2017/10/17 Javascript
Vue 兄弟组件通信的方法(不使用Vuex)
2017/10/26 Javascript
vue elementui el-form rules动态验证的实例代码详解
2019/05/23 Javascript
[02:57]2014DOTA2国际邀请赛-观众采访
2014/07/19 DOTA
[01:08:29]DOTA2-DPC中国联赛定级赛 RNG vs Aster BO3第一场 1月9日
2021/03/11 DOTA
python实现用户登陆邮件通知的方法
2015/07/09 Python
python数据封装json格式数据
2018/03/04 Python
python得到windows自启动列表的方法
2018/10/14 Python
Python 输出时去掉列表元组外面的方括号与圆括号的方法
2018/12/24 Python
简单了解python的内存管理机制
2019/07/08 Python
Python print不能立即打印的解决方式
2020/02/19 Python
Under Armour安德玛德国官网:美国高端运动科技品牌
2019/03/09 全球购物
维也纳通行证:Vienna PASS
2019/07/18 全球购物
size?法国官网:英国伦敦的球鞋精品店
2020/03/15 全球购物
小区门卫管理制度
2014/01/29 职场文书
服务标语大全
2014/06/18 职场文书
办理信用卡工作证明
2014/09/30 职场文书
优秀班主任事迹材料
2014/12/16 职场文书
农民工工资支付承诺书
2015/05/04 职场文书
应用最多的公文《通知》如何写?
2019/04/02 职场文书
加薪申请书应该这样写!
2019/07/04 职场文书
五年级作文之劳动作文
2019/11/12 职场文书
解决pytorch读取自制数据集出现过的问题
2021/05/31 Python
Redis实现一个账号只能登录一个设备
2022/04/19 Redis