strstr
搜索字符串在另一字符串中的第一次出现,并返回剩余部分。
时间复杂度
O(n+m)
源码
strstr实现思路是,先查询子串的位置,返回该位置后的字符串。核心函数是 zend_memnstr_ex,使用的子串搜索算法是Sunday算法,这个具体就不说了。
例子
|
|
1、zend_memnstr_ex_pre 构造跳转表,如下:
a | b | 其他 |
---|---|---|
1 | 2 | 4 |
2、查询过程
b | f | a | b | c | e | a | b | a | d | d | e | |
---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | a | b | a | |||||||||
2 | a | b | a | |||||||||
3 | a | b | a |
|
|