1串类型的定义4
2串的表示和实现4
3串的模式匹配算法4
1求子串位置的定位函数4
2模式匹配的一种改进算法4
4串操作应用举例4
3串的模式匹配算法4
1求子串位置的定位函数又称模式匹配或串匹配,应用非常广泛
在串匹配中,假设S为目标串,P为模式串:S=‘s1s2
sn’P=‘p1p2…pm’串的匹配实际上是根据1≤i≤n-m+1依次将S的子串S’[i
i+m-1]和P[1
m]进行比较,若S’[i
i+m-1]=P[1
m],则称从位置i开始的匹配成功;反之,匹配失败
上述的位置i又称为位移,当S’[i
i+m-1]=P[1
m]时,i称有效位移;当S’[i
i+m-1]≠P[1
m]时,i称无效位移
这样,串匹配问题可简化为是找出某给定模式串P在给定目标串S中首次出现的有效位移
串匹配的算法很多,这里我们只讨论一种最简单的称为朴素的串匹配算法
基本思想:用一个循环来依次检查n-m+1个合法的位移i(1≤i≤n-m+1)是否为有效位移
算法段:for(i=1;i