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

作者:Sephiroth 时间:2021-09-18 11:18:16 

本文实例讲述了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,算法
0
投稿

猜你喜欢

  • Python操作MySQL数据库的示例代码

    2024-01-29 03:55:09
  • php 字符串函数收集

    2024-05-11 10:02:26
  • 详解Mysql中的视图

    2024-01-22 09:16:00
  • matlab 生成.bmp格式的文件

    2022-08-06 09:39:09
  • Java正则表达式Pattern和Matcher原理详解

    2023-01-10 14:01:31
  • 如何修改Linux的下MySQL 5.0的默认连接数

    2012-01-29 18:07:04
  • Python Django路径配置实现过程解析

    2023-11-13 20:50:02
  • mysql主从服务器同步心得体会第1/2页

    2024-01-18 13:34:20
  • 解决MSSQL2005远程连接sql2000非默认端口数据库的问题

    2024-01-28 09:41:10
  • python 自动批量打开网页的示例

    2021-04-16 00:35:51
  • Python常用知识点汇总

    2023-02-17 09:42:44
  • MySQL数据库事务隔离级别详解

    2024-01-26 12:34:03
  • Python如何读取、写入CSV数据

    2022-02-17 14:03:31
  • JavaScript实现Tab标签页切换的最简便方式(4种)

    2024-04-17 10:30:36
  • Python基础之numpy库的使用

    2023-01-21 02:48:51
  • CSS隐藏文字的方法

    2008-10-03 12:08:00
  • 网站细节论(1)--阅读的细节

    2007-12-21 12:16:00
  • c#判断数据库服务器是否已经启动的方法

    2024-01-25 06:23:05
  • 给你一面国旗 教你用python画中国国旗

    2023-06-25 15:10:36
  • pytorch DistributedDataParallel 多卡训练结果变差的解决方案

    2021-09-24 14:31:43
  • asp之家 网络编程 m.aspxhome.com