
这一题比较简单,就是返回haystack中第一次遇到needle字符串的位置。
但是要快速写出比较清爽的代码会有点难,记录于此以备参考
int strStr(string haystack, string needle)
{
if(needle.size()==0)
return 0;
int j=0,flag,i;
for(i=0;i<haystack.size();i++)
{
if(haystack[i]==needle[0])
flag=0;
for(j=0;j<needle.size();j++)
{
if(haystack[i+j]!=needle[j])
{
flag=1;
break;
}
}
if(flag==0)
return i;
}
return -1;
}
这篇博客探讨了一种简单的字符串查找算法,即在一个大的文本(haystack)中寻找目标子串(needle)的首次出现位置。代码简洁明了,适用于基础的字符串搜索。通过对haystack的遍历和内部的嵌套循环,检查每个字符是否与needle匹配,当找到匹配的子串时返回起始位置。若遍历结束未找到,则返回-1。这个算法是字符串处理的基础,对于理解字符串操作很有帮助。
4085

被折叠的 条评论
为什么被折叠?



