leetcode 28. Implement strStr()
题目:实现strStr()
strStr()函数是求解子串在父串中第一次出现的位置,否则返回-1;
测试用例设计:
- 子串长度>父串长度,返回-1;
- 子串长度=父串长度,如果相同,返回0,否则返回-1;(包含特殊情况,父串子串均为空串)
- 子串长度<父串长度
- 子串不包含在父串中,返回-1;
- 子串包含在父串中,返回第一次出现的位置;
代码如下:
public int strStr(String haystack, String needle) {
if(haystack.length()<needle.length()) return -1;
else if(haystack.length()==needle.length()&&haystack.equals(needle))return 0;
for(int i = 0;i<=haystack.length()-needle.length();i++){
if(haystack.substring(i, i+needle.length()).equals(needle))
return i;
}
return -1;
}