本文主要讲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/ ),不得用于商业目的,基于本文修改后的作品务必以相同的许可发布。如有任何疑问,请 与我联系