Brute-Force算法是一种简单、直观的模式匹配算法。
其实现方式是:
设 s 是主串, t 为模式串; i 为主串当前比较字符的下标;j 为模式串当前比较字符的下标。令 i 的初值为 start,j 的初值为 0 。
从主串的第 start 个字符 ( i = start ) 起和模式串的第一个字符 ( j = 0 )比较,若相等,则继续逐个比较后续字符 ( i++,j++);
否则从主串的第二个字符起重新和模式串比较( i 返回到原位置加 1, j 返回到 0 )依此类推,直至模式串t中的每一个字符依次和主串 s 的一个连续的字符序列相等,则称匹配成功,函数返回模式串 t 的第一个字符在主串 s 中的位置;否则称匹配失败,函数返回 -1。
主串 s 为“ababcabdabcabca”,模式串 t 为“abcabc”,匹配过程如下: