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文件读写并使用mysql批量插入示例分享(python操作mysql)
Feb 17 Python
python制作一个桌面便签软件
Aug 09 Python
python 读取DICOM头文件的实例
May 07 Python
Django1.9 加载通过ImageField上传的图片方法
May 25 Python
django用户登录和注销的实现方法
Jul 16 Python
python中的字符串内部换行方法
Jul 19 Python
python实现简易数码时钟
Feb 19 Python
基于Python实现2种反转链表方法代码实例
Jul 06 Python
pandas参数设置的实用小技巧
Aug 23 Python
Django 权限管理(permissions)与用户组(group)详解
Nov 30 Python
全面介绍python中很常用的单元测试框架unitest
Dec 14 Python
Python FuzzyWuzzy实现模糊匹配
Apr 28 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开发中常用的8个小技巧
2008/08/27 PHP
php为字符串前后添加指定数量字符的方法
2015/05/04 PHP
Windows下PHP开发环境搭建教程(Apache+PHP+MySQL)
2016/06/13 PHP
在网页中屏蔽快捷键
2006/09/06 Javascript
用Javascript 和 CSS 实现脚注(Footnote)效果
2009/09/09 Javascript
Aptana调试javascript图解教程
2009/11/30 Javascript
JS获取URL中参数值(QueryString)的4种方法分享
2014/04/12 Javascript
控制文字内容的显示与隐藏示例
2014/06/11 Javascript
jQuery链式操作实例分析
2015/11/16 Javascript
实例讲解JavaScript中的this指向错误解决方法
2016/06/13 Javascript
基于jQuery实现多标签页切换的效果(web前端开发)
2016/07/24 Javascript
js带闹铃功能的倒计时代码
2016/09/29 Javascript
浅谈jQuery中Ajax事件beforesend及各参数含义
2016/12/03 Javascript
jQuery设置和获取select、checkbox、radio的选中值方法
2017/01/01 Javascript
详解Angularjs 如何自定义Img的ng-load 事件
2017/02/15 Javascript
AngularJS+Bootstrap3多级导航菜单的实现代码
2017/08/16 Javascript
JS删除数组里的某个元素方法
2018/02/03 Javascript
JS基于Location实现访问Url、重定向及刷新页面的方法分析
2018/12/03 Javascript
vuex Module将 store 分割成模块的操作
2020/12/07 Vue.js
python在windows下创建隐藏窗口子进程的方法
2015/06/04 Python
使用Python制作自动推送微信消息提醒的备忘录功能
2018/09/06 Python
pandas.dataframe按行索引表达式选取方法
2018/10/30 Python
对pycharm 修改程序运行所需内存详解
2018/12/03 Python
python3中类的继承以及self和super的区别详解
2019/06/26 Python
python中的&&及||的实现示例
2019/08/07 Python
SVG实现多彩圆环倒计时效果的示例代码
2017/11/21 HTML / CSS
不用游标的SQL语句有哪些
2012/09/07 面试题
教师评优的个人自我评价分享
2013/09/19 职场文书
运输服务质量承诺书
2014/03/27 职场文书
银行竞聘演讲稿
2014/05/16 职场文书
警察先进个人事迹材料
2014/05/16 职场文书
禁毒宣传活动总结
2014/08/26 职场文书
2015年城乡环境综合治理工作总结
2015/07/24 职场文书
2016年七夕爱情寄语
2015/12/04 职场文书
爱心捐款倡议书:点燃希望,传递温暖
2019/11/04 职场文书
python实现双向链表原理
2022/05/25 Python