当前位置首页 > 百科> 正文

字元串搜寻算法

2020-02-10 09:23:16 百科

字元串搜寻算法

字元串搜寻算法是一种搜寻算法,目的为在一长字元串中找出其是否包含某字元串。

基本介绍

  • 中文名:字元串搜寻算法
  • 类型:搜寻算法
  • 直观解释:最直观的解法是比对
  • 如下例中:字元串haystack字元串needle
直观解释
char* haystack;
char* needle;
int hlen, nlen, found;int i,j,k;
found =0;
hlen =strlen(haystack);
nlen =strlen(needle);
for(i =0; i < hlen;++i)
{
for(j =0; j < nlen;++j)
{
if(haystack[i+j]!= needle[j])
break;
if(j == nlen -1)
found =1;
};
};
return found;
上例中,若字元串needle存在于字元串haystack中,则传回1,否则传回0。
但是此直观算法的複杂度为 O(mn),其中haystack的长度为n、needle的长度为m。
声明:此文信息来源于网络,登载此文只为提供信息参考,并不用于任何商业目的。如有侵权,请及时联系我们:baisebaisebaise@yeah.net