Advertisement

Python3计算两个二进制序列的相似性(基于编辑距离)

阅读量:

编辑距离:

亦被称为莱文斯坦距离(Levenshtein Distance),其定义为将一个字符串转换为另一个字符串所需进行的最少编辑操作次数。该数值越高,表明两个字符串之间的差异性越显著。允许的编辑操作类型包括字符替换、字符插入以及字符删除。

具体实现过程可参考点击打开链接 这篇博客

复制代码
 import math

    
 def minEditDist(sm,sn):
    
     m,n = len(sm)+1,len(sn)+1
    
  
    
     # create a matrix (m*n)
    
     matrix = [[0]*n for i in range(m)]
    
     #初始化矩阵
    
     matrix[0][0]=0
    
     for i in range(1,m):
    
     matrix[i][0] = matrix[i-1][0] + 1
    
  
    
     for j in range(1,n):
    
     matrix[0][j] = matrix[0][j-1]+1
    
  
    
  
    
     for i in range(m):
    
     print (matrix[i])
    

全部评论 (0)

还没有任何评论哟~