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的Flask框架中使用模版的入门教程
Apr 20 Python
对变量赋值的理解--Pyton中让两个值互换的实现方法
Nov 29 Python
python3大文件解压和基本操作
Dec 15 Python
python编写分类决策树的代码
Dec 21 Python
浅谈Django学习migrate和makemigrations的差别
Jan 18 Python
Python使用matplotlib绘制多个图形单独显示的方法示例
Mar 14 Python
python使用pipeline批量读写redis的方法
Feb 18 Python
python Django的web开发实例(入门)
Jul 31 Python
python实现将两个文件夹合并至另一个文件夹(制作数据集)
Apr 03 Python
python 判断一组数据是否符合正态分布
Sep 23 Python
地图可视化神器kepler.gl python接口的使用方法
Dec 22 Python
详解Python如何批量采集京东商品数据流程
Jan 22 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
【COS正片】蕾姆睡衣cos,纯洁可爱被治愈了 cn名濑弥七
2020/03/02 日漫
全国FM电台频率大全 - 22 重庆市
2020/03/11 无线电
php cout<<的一点看法
2010/01/24 PHP
在WordPress中获取数据库字段内容和添加主题设置菜单
2016/01/11 PHP
基于jQuery的遍历同id元素 并响应事件的代码
2012/06/14 Javascript
如何设置iframe高度自适应在跨域情况下的可用方法
2013/09/06 Javascript
jquery实现checkbox 全选/全不选的通用写法
2014/02/22 Javascript
JavaScript把数组作为堆栈使用的方法
2015/03/20 Javascript
浅谈jQuery中Ajax事件beforesend及各参数含义
2016/12/03 Javascript
Vue2组件tree实现无限级树形菜单
2017/03/29 Javascript
详解Vue-cli中的静态资源管理(src/assets和static/的区别)
2018/06/19 Javascript
Layui表格行工具事件与数据回填方法
2019/09/13 Javascript
Nodejs封装类似express框架的路由实例详解
2020/01/05 NodeJs
vue使用canvas实现移动端手写签名
2020/09/22 Javascript
JavaScript实现瀑布流布局的3种方式
2020/12/27 Javascript
Flask SQLAlchemy一对一,一对多的使用方法实践
2013/02/10 Python
python魔法方法-属性访问控制详解
2016/07/25 Python
python3.5 + PyQt5 +Eric6 实现的一个计算器代码
2017/03/11 Python
Python 列表理解及使用方法
2017/10/27 Python
python 爬虫 批量获取代理ip的实例代码
2018/05/22 Python
利用python将图片版PDF转文字版PDF
2019/05/03 Python
Python人工智能之路 之PyAudio 实现录音 自动化交互实现问答
2019/08/13 Python
解决Mac下使用python的坑
2019/08/13 Python
python多任务之协程的使用详解
2019/08/26 Python
Python如何给函数库增加日志功能
2020/08/04 Python
Pytorch实验常用代码段汇总
2020/11/19 Python
英国玛莎百货新西兰:Marks & Spencer New Zealand
2019/07/21 全球购物
销售个人求职信范文
2014/04/28 职场文书
李敖北大演讲稿
2014/05/24 职场文书
超市理货员岗位职责
2014/07/04 职场文书
小学课外活动总结
2014/07/09 职场文书
领导班子四风问题个人对照检查材料
2014/10/04 职场文书
2015年司法局工作总结
2015/05/22 职场文书
Nginx进程管理和重载原理详解
2021/04/22 Servers
Python matplotlib绘制雷达图
2022/04/13 Python
SQL Server中的逻辑函数介绍
2022/05/25 SQL Server