28. 实现strStr() - LeetCode

28. 实现strStr()

双指针

class Solution {
    public int strStr(String haystack, String needle) {
        if(needle.length() == 0) return 0;
        int len1 = haystack.length();
        int len2 = needle.length();
        for(int i = 0; i < len1 - len2 + 1; i++){
            boolean flag = true;
            for(int j = 0; j < len2; j++)
                if(haystack.charAt(i+j) != needle.charAt(j)){
                    flag = false;
                    break;
                }
            if(flag) return i;
        }
        return -1;
    }
}
  • 另有将字符串中字母转为数字,在常数时间内求得子串哈希值,进行比较的方法,但局限较大,字符串中的字符必须为小写字母
上一篇:LeetCode:实现stStr()的下标位置


下一篇:LeetCode 28 实现strStr