题目地址:
https://www.lintcode.com/problem/implement-strstr/description
给定两个字符串,判断其中一个是否是另一个的子串,如果是,则返回第一个匹配位置的下标,否则返回 − 1 -1 −1。这题标记为EASY,直接暴力枚举就好了。代码如下:
public class Solution {
/**
* @param source:
* @param target:
* @return: return the index
*/
public int strStr(String source, String target) {
// Write your code here
for (int i = 0; i + target.length() <= source.length(); i++) {
int j = 0;
while (j < target.length() && source.charAt(i + j) == target.charAt(j)) {
j++;
}
if (j == target.length()) {
return i;
}
}
return -1;
}
}
时间复杂度 O ( m n ) O(mn) O(mn), m m m和 n n n分别是两个子串的长度。