zoukankan      html  css  js  c++  java
  • 比较两个字符串的相似度

    关于多个文本字符串的去重, 需要比较两个字符串的相似度

    两个字符串相似度的比较,return 0-1

    ``` function string_same(str1, str2){ //计算两个字符串的长度。 var len1 = str1.length, len2 = str2.length, dif = [],//建立上面说的数组,比字符长度大一个空间 temp,i,j,a; //赋初值,步骤B for (a = 0; a <= len1; a++) { dif[a] = []; dif[a][0] = a; } for (a = 0; a <= len2; a++) { dif[0][a] = a; } //计算两个字符是否一样,计算左上的值 //var temp; for (i = 1; i <= len1; i++) { for (j = 1; j <= len2; j++) { if (str1[i - 1] == str2[j - 1]) { temp = 0; } else { temp = 1; } dif[i][j] = Math.min(dif[i - 1][j - 1] + temp,dif[i][j - 1] + 1,dif[i - 1][j] + 1); } } //console.log("差异步骤:" + dif[len1][len2]); //计算相似度 //var similarity = 1 - dif[len1][len2] / Math.max(str1.length, str2.length); return 1 - dif[len1][len2] / Math.max(len1, len2); } ```

    两个字符串相似度的比较,比较过程中包含标点,位置,长度。返回一个小数为两个字符串的相似度。

    作者:KeerDi —— ET.frog

    出处:http://www.cnblogs.com/frogblog/

    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

  • 相关阅读:
    hbase全分布安装配置
    ElasticSearch概述及Linux下的单机ElasticSearch安装
    Redis 集群搭建详细指南
    spark集群安装配置
    hbase全分布安装配置
    zookeeper图形界面工具zooinspector
    storm集群安装配置
    kafka集群安装配置
    sqoop配置安装以及导入
    Flume的安装部署
  • 原文地址:https://www.cnblogs.com/frogblog/p/8478774.html
Copyright © 2011-2022 走看看