【问题标题】:String comparison value relative to length相对于长度的字符串比较值
【发布时间】:2021-04-19 08:26:42
【问题描述】:

我需要一种算法,该算法将返回一个比较值,无论字符串的长度如何,都可以使用该比较值。我尝试了几种不同的方法,但坦率地说,我的数学很烂。

基本上,我需要获取一个值来查找字符串中不同字符的百分比,并将它们返回到一个可以用于阈值的值。

这里有一些例子:

A Sample String -> A Samlpe String

缺少 2 个字符..

A Substantially Longer Sample String - > A Substantially Longer Samlpe String

仍然缺少 2 个字符..

那么,无论字符串长度如何,我怎样才能做出返回相似值的东西呢?

【问题讨论】:

标签: c# string


【解决方案1】:

我不太明白这个问题,但这是你的意思吗?

public double Compare(string a, string b)
{
    int min = Math.Min(a.Length, b.Length);
    int max = Math.Max(a.Length, b.Length);

    double match = 0;
        
    for (int i = 0; i < min; i++)
    {
        if(a[i] == b[i])
        {
             match++;
        }
    }

    return match / max;
}

这里字符串长度无所谓,你匹配最短字符串的字符,然后根据最长字符串返回一个百分比。

【讨论】:

  • 是的,这正是我的意思。谢谢!
猜你喜欢
  • 2013-02-12
  • 1970-01-01
  • 2011-01-08
  • 1970-01-01
  • 2018-05-11
  • 1970-01-01
  • 1970-01-01
  • 2011-10-20
  • 1970-01-01
相关资源
最近更新 更多