编程之战第二百一四章 字符串相似度 首页

字体:      护眼 关灯

上一章 目录 下一章

编程之战第二百一四章 字符串相似度

    “假如我们的候选列表里有如下的内容:”
    有你最擅长的“javascript”。
    有一杯温醇的“java”。
    有简洁美的“ruby”。
    有世界上最好的语言“php”。
    有胶水语言“python”。
    还有JS低调的小兄弟“coffeescript”。
    “整个列表就像这样:”
    ['javascript','java','ruby','php','python','coffeescript']
    “假如用户在输入框键入了heaven(天堂)”。
    “请将列表按照和heaven的字符串相似度进行排序”。
    “相似度越高,排名越靠前”。
    听到这里,杨成思索了片刻,他提出疑问。
    “这个相似度参照的依据是什么呢?”
    经理耐心地解释道。
    “依据就是从一个字符串转换为列表内某个字符串,所需要的最少操作次数”。
    “这个操作可以是新增字符,修改字符,删除字符”。
    “比如从字符串berr,转换为beer,只需要修改r为e,也就是一次操作”。
    “而从berr,转换为barrel,需要修改e为a,并且新增e,新增l,也就是三次操作”。
    “所以berr和beer的字符串相似度更高,beer的排名比barrel更高”。
    “明白了吧!”

上一章 目录 下一章