本文主要讲C#搜索算法。
Bdf 算法
这算法是一个模糊的算法,用在用户在找一个他不确定的文本。
判断文本和匹配的字符是否有相同顺序,如果有,那么就是匹配。
假如我们有数据“abc”,匹配“abc”,那么,两个完全相对的字符串是匹配。
数据“aaacbc”,匹配“abc”,也是匹配,因为数据按照“abc”的顺序,算法不管数据有多长,只要数据存在和匹配相同的顺序,那么就匹配。
/// <summary>
///
/// </summary>
/// <param name="text">数据</param>
/// <param name="str">匹配</param>
public static bool Bdt(string text, string str)
{
int i = 0;
bool reu = false;
foreach (var temp in str)
{
reu = false;
for (; i < text.Length; i++)
{
if (temp == text[i])
{
reu = true;
break;
}
}
}
return reu;
}
现在算法用在 https://github.com/tpxxn/JiHuangBaiKeCSharp
本文会经常更新,请阅读原文: https://dotnet-campus.github.io//post/C-%E6%90%9C%E7%B4%A2%E7%AE%97%E6%B3%95.html ,以避免陈旧错误知识的误导,同时有更好的阅读体验。
本作品采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可。欢迎转载、使用、重新发布,但务必保留文章署名 lindexi (包含链接: https://dotnet-campus.github.io/ ),不得用于商业目的,基于本文修改后的作品务必以相同的许可发布。如有任何疑问,请 与我联系 。