彻底搞懂KMP算法(专为初学者而写)
2014-08-12 21:40
92 查看
KMP是字符串匹配中一个重要的算法,也是一个经典的算法,随便写一点,等明天写完整
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
相关文章推荐
- 看完让你彻底搞懂Websocket原理
- 彻底搞懂python函数传值or引用问题
- 彻底搞懂字符编码(unicode,mbcs,utf-8,utf-16,utf-32,big endian,little endian...)
- 每个Java初学者都应该搞懂的六个问题
- 每个java初学者都应该搞懂的问题!
- Java初学者都应该搞懂的六个问题
- 每个java初学者都应该搞懂的问题
- Java初学者都应该搞懂的六个问题
- 彻底搞懂CNN
- 看完让你彻底搞懂Websocket原理
- 【经典推荐】每个JAVA初学者都应该搞懂的问题
- 彻底搞懂Gradle、Gradle Wrapper与Android Plugin for Gradle的区别和联系
- 彻底搞懂startActivityForResult在FragmentActivity和Fragment中的异同
- Java精华积累:每个初学者都应该搞懂的问题!(转)
- 每个Java初学者都应该搞懂的六个问题
- 嗯,让我们彻底搞懂C/C++函数指针吧
- 看完让你彻底搞懂Websocket原理
- 经典算法研究系列:六、教你从头到尾彻底理解KMP算法、updated
- 彻底搞懂Oracle的左外连接和右外连接
- 10分钟彻底搞懂Http的强制缓存和协商缓存(小结)