LeetCode Implement strStr()
来源:互联网 发布:网易uu加速器mac 编辑:程序博客网 时间:2024/04/30 09:56
Implement strStr().
Returns the index of the first occurrence of needle in haystack, or -1 if needle is not part of haystack.
Update (2014-11-02):
The signature of the function had been updated to return the index instead of the pointer. If you still see your function signature returns a char *
or String
, please click the reload button to reset your code definition.
思路:KMP模板题。
class Solution {public: void getNext(char *patten, vector<int> &next) { int i = 0, j = -1; int len = strlen(patten); next.resize(len+1); next[0] = -1; while (i < len) { if (j == -1 || patten[i] == patten[j]) { i++, j++; next[i] = j; } else j = next[j]; } } int strStr(char *haystack, char *needle) { if (haystack == NULL || needle == NULL) return -1; int i = 0, j = 0; int lena = strlen(haystack); int lenb = strlen(needle); vector<int> next; getNext(needle, next); while (i < lena && j < lenb) { if (j == -1 || haystack[i] == needle[j]) i++, j++; else j = next[j]; } if (j == lenb) return i - j; else return -1; }};
0 0
- LeetCode: Implement strStr()
- [Leetcode] Implement strstr()
- Leetcode: Implement strStr
- [Leetcode] Implement strStr()
- LeetCode Implement strStr()
- 【leetcode】Implement strStr()
- [LeetCode]Implement strStr()
- [LeetCode] Implement strStr()
- [LeetCode] Implement strStr()
- LeetCode-Implement strStr()
- LeetCode: Implement strStr()
- LeetCode - Implement strStr()
- LeetCode: Implement strStr()
- 【leetcode】Implement strStr()
- Leetcode: Implement strStr()
- leetcode implement strStr
- LeetCode Implement strStr()
- LeetCode题解:Implement strStr()
- 欢迎使用CSDN-markdown编辑器
- 关于Asp.Net VNext的一些资源
- windows下安装python和依赖包的利器——Anaconda
- [基础] glBegin参数
- SQL语句大全
- LeetCode Implement strStr()
- 线段树专题
- GPU:新手完全入门的知识
- I,P,B帧和PTS,DTS的关系
- C++ 静态成员能用于某些场合,而普通成员不能
- TopCoder SRM 650 Div2 Problem 500 - TaroFillingAStringDiv2 (DP)
- 01.关于sprite_kit
- 数学相关
- 三维旋转(根据转轴和角度)的公式。罗德里格旋转公式