串的定义:
串的定义和实现
子串在主串的位置,以其第 1 个字符在主串的位置来标识
空格串也是也属于串,并非空串,其长度为其空格的数量 毕竟 ASCII中空格是0X20
串类型的最小操作子集: 赋值 比较 求长 联结 求子串
主串指针 i 模式串指针 j
一般情况下 i 只有在 next[j] = 0 时或者 匹配成功 会增 1 ,其他情况下一直要和模式串的next[j] 指向的下一个字符比较。
做题技巧

若 next[j ] = 0,则 i 和 j 同步加一匹配
对next数组的优化

错题
重要的事情说三遍
前后缀部分匹配值 右移一位 + 1 就是当前子串指针 j 指向的字符 在串中的编号
如果串 的其实编号是 1 则默认 next[j] = 0 表示将主串和模式串同步右移一位
如果编号是 0 开始,那就需要next数组 整体减 1
此时 next[j] = -1 表示 将主串和模式串同步右移一位

