0
点赞
收藏
分享

微信扫一扫

strstr另一个实现方法:

陈情雅雅 2022-08-09 阅读 121


  简单匹配算法

先来看一个简单匹配算法的函数:

int Index_BF ( char S [ ], char T [ ], int pos ) 













{













/* 若串 S 中从第 pos(S 的下标 0 ≤ pos<StrLength(S)) 个字符
起存在和串 T 相同的子串,则称匹配成功,返回第一个
这样的子串在串 S 中的下标,否则返回 -1 */
int i = pos, j = 0;













while ( S[i+j] != '\0'&& T[j] != '\0')













if ( S[i+j] == T[j] )













j ++; // 继续比较后一字符
else













{













i ++; j = 0; // 重新开始新的一轮匹配














}
if ( T[j] == '\0')













return i; // 匹配成功 返回下标
else













return -1; // 串 S 中 ( 第 pos 个字符起 ) 不存在和串 T 相同的子串
} // Index_BF

举报

相关推荐

0 条评论