Implement strStr()
Implement strStr().
Returns a pointer to the first occurrence of needle in haystack, or null if needle is not part of haystack.
解题方法:
该题要实现库函数substr,即字符串取子串的函数。
注意:空串和空串也属于子串的关系。
整个过程思路比较简单:取母串的字符,进入判断,如果包含字串,返回!否则取下一个字符继续进行下一次判定。
Code:
class Solution {
public:
char *strStr(char *haystack, char *needle)
{
int len_h=strlen(haystack);
int len_n=strlen(needle);
if(len_h<len_n)
return NULL;
else if(len_h==len_n)
{
if(strcmp(haystack,needle))
return NULL;
else
return haystack;
}
for(int i=0;i<=len_h-len_n;i++)
{
bool flag=true;
for(int j=0;j<len_n;j++)
{
if(haystack[i+j]!=needle[j])
{
flag=false;
break;
}
}
if(flag)
return haystack+i;
}
return NULL;
}
};