leetcode——Implement strStr() 实现字符串匹配函数(AC)
来源:互联网 发布:雷洋死亡真相 知乎 编辑:程序博客网 时间:2024/06/05 02:04
Implement strStr().
Returns a pointer to the first occurrence of needle in haystack, or null if needle is not part of haystack.
这个题考查的是KMP算法,先求特征向量,然后再进行匹配,确实可以大大提高效率。code如下:
class Solution {public: char *strStr(char *haystack, char *needle) { if(strlen(haystack)==0&&strlen(needle)==0) return haystack; if(strlen(haystack)==0&&strlen(needle)!=0)return NULL;if(strlen(needle)==0) return haystack;int m=strlen(needle); int *N = new int[m];N[0]=0;int i,j,k;for(i=1;i<m;i++){k=N[i-1];while(k>0 && needle[i]!=needle[k]){k=N[k-1];}if(needle[i]==needle[k])N[i]=k+1;elseN[i]=0;}j=0;for(i=0;i<strlen(haystack);i++){while(j>0 && needle[j]!=haystack[i])j=N[j-1];if(needle[j]==haystack[i])j++;if(j==strlen(needle))return haystack+i-j+1;}return NULL; }};
0 0
- leetcode——Implement strStr() 实现字符串匹配函数(AC)
- [LeetCode]Implement strStr() 字符串匹配
- leetcode 字符串匹配Implement strStr()
- (LeetCode)Implement strStr() --- 匹配字符串
- leetcode | Implement strStr() | 实现字符串查找函数
- leetCode 28.Implement strStr() (实现字符串匹配函数) 解题思路和方法
- Implement strStr() (匹配字符串问题,哈希解法) 【leetcode】
- [LeetCode-28] Implement strStr(KMP 字符串匹配)
- LeetCode: Implement strStr()(字符串匹配:Sunday算法)
- LeetCode-28-Implement strStr()(字符串匹配)
- [C++]LeetCode 28: Implement strStr() (实现strStr()函数)
- LeetCode 28 Implement strStr()(实现strStr()函数)
- Implement strStr() 实现strStr函数 @ LeetCode
- leetcode 28. Implement strStr() 实现strStr()函数
- LeetCode—Implement strStr()
- 【字符串匹配】Implement strStr()
- 字符串匹配Implement strStr()
- LeetCode 之 Implement strStr() — C 实现
- 一些感悟吧!
- poj 2891 Strange Way to Express Integers(中国剩余定理)
- WIN7下的WCF遇到的问题:HTTP 错误 404.17 - Not Found 请求的内容似乎是脚本,因而将无法由静态文件处理程序来处理
- Pessimistic locking----PoEAA
- VB.NET——报表
- leetcode——Implement strStr() 实现字符串匹配函数(AC)
- 直接挂载虚拟机内为LVM分区的镜像
- 同一个页面内Ajax过多导致SendRedirect抛java.lang.IllegalStateException异常
- Writing an RMI Server 写一个RMI服务端
- 使用XStream操作XML和JSON
- 积累(三)
- 数据库存储
- 获取联系人【自定义布局文件与主布局文件相连,数据库内容查找并显示】
- 深入浅出面向对象分析与设计笔记