栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

在Python中找到一组字符串的最小汉明距离

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

在Python中找到一组字符串的最小汉明距离

您可以

hamdist
通过添加一个可选参数来优化功能,该参数包含到目前为止的最小距离,这样,如果
diffs
达到该值,您将停止计算距离,因为此比较将为您提供比最小距离更大的距离:

def hamdist(str1, str2,prevMin=None):    diffs = 0    if len(str1) != len(str2):        return max(len(str1),len(str2))    for ch1, ch2 in zip(str1, str2):        if ch1 != ch2: diffs += 1 if prevMin is not None and diffs>prevMin:     return None    return diffs

您将需要调整主循环以使用

None
来自的返回值
hamdist

dmin=len(trans[0])for i in xrange(len(trans)):    for j in xrange(i+1,len(trans)): dist=hamdist(trans[i][:-1], trans[j][:-1]) if dist is not None and dist < dmin:         dmin = dist


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/485587.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号