Python基于動態(tài)規(guī)劃算法計算單詞距離
更新時間:2015年07月25日 14:44:55 作者:Sephiroth
這篇文章主要介紹了Python基于動態(tài)規(guī)劃算法計算單詞距離的方法,實例分析了Python動態(tài)規(guī)劃算法的實現(xiàn)與使用技巧,具有一定參考借鑒價值,需要的朋友可以參考下
本文實例講述了Python基于動態(tài)規(guī)劃算法計算單詞距離。分享給大家供大家參考。具體如下:
#!/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 .
動態(tài)規(guī)劃算法,計算單詞距離
>>> 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和shell監(jiān)控linux服務器的詳細代碼
這篇文章主要為大家介紹了使用python和shell監(jiān)控linux服務器的詳細代碼,具有一定的參考價值,感興趣的小伙伴們可以參考一下2018-06-06
python使用clear方法清除字典內(nèi)全部數(shù)據(jù)實例
這篇文章主要介紹了python使用clear方法清除字典內(nèi)全部數(shù)據(jù),實例分析了Python中clear方法清空字典內(nèi)數(shù)據(jù)的相關技巧,具有一定參考借鑒價值,需要的朋友可以參考下2015-07-07
Python算法之求n個節(jié)點不同二叉樹個數(shù)
本文先向大家分享了建立二叉樹的簡單代碼,其次介紹了Python計算n個節(jié)點不同二叉樹個數(shù)的問題及實現(xiàn)代碼示例,具有一定參考價值,需要的朋友可以了解下。2017-10-10
最新tensorflow與pytorch環(huán)境搭建的實現(xiàn)步驟
深度學習相關的熱門框架主要為Tensorflow和Pytorch,本文主要介紹了搭建最新tensorflow與pytorch環(huán)境,具有一定的參考價值,感興趣的可以了解一下2024-04-04

