首页 > 代码库 > [leetcode] Implement strStr()
[leetcode] Implement strStr()
Implement strStr().
Returns a pointer to the first occurrence of needle in haystack, or null if needle is not part of haystack.
https://oj.leetcode.com/problems/implement-strstr/
思路:目测有BF法,BMP法,BM法等。
BF法
public class Solution { public String strStr(String hayStack, String needle) { if (hayStack == null || needle == null) return null; int hayLen = hayStack.length(); int neeLen = needle.length(); if (hayLen < neeLen) return null; int i, j; int hayStart = 0; while (hayStart <= hayLen-neeLen) { i = hayStart; j = 0; while (i < hayLen && j < neeLen && hayStack.charAt(i) == needle.charAt(j)) { i++; j++; } if (j == neeLen) { return hayStack.substring(hayStart); } hayStart++; } return null; } public static void main(String[] args) { System.out.println(new Solution().strStr("abcdefg", "cde")); System.out.println(new Solution().strStr("cde", "")); System.out.println(new Solution().strStr("aaabbb", "abbb")); System.out.println(new Solution().strStr("", "")); }}
参考:
http://blog.csdn.net/kenden23/article/details/17029625
http://fisherlei.blogspot.com/2012/12/leetcode-implement-strstr.html
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。