首页 > 其他 > 详细

28. Implement strStr()

时间:2017-02-11 10:55:26      阅读:252      评论:0      收藏:0      [点我收藏+]

Implement strStr().

Returns the index of the first occurrence of needle in haystack, or -1 if needle is not part of haystack.

 此题的想法是遍历一遍haystack数组,当遍历到cur的元素和needle第一个char一样的时候,看haystack的子字符串是否和needle,代码如下:

 1 public class Solution {
 2     public int strStr(String haystack, String needle) {
 3         int len = haystack.length();
 4         int index = -1;
 5         if(needle.length()==0) return 0;
 6         if(haystack.length()==0) return index;
 7         for(int i=0;i<len;i++){
 8             if(haystack.charAt(i)==needle.charAt(0)){
 9                 if(ismatch(haystack,needle,i)){
10                     index = i;
11                     break;
12                 }
13             }
14         }
15         return index;
16     }
17     public boolean ismatch(String haystack,String needle,int i){
18         int k = 0;
19         while(k<needle.length()&&(k+i)<haystack.length()&&haystack.charAt(i+k)==needle.charAt(k)){
20             k++;
21         }
22         if(k==needle.length()) return true;
23         return false;
24     }
25 }

 本题也可以使用kmp的做法来做,希望第三遍刷的时候能掌握。

 

 

28. Implement strStr()

原文:http://www.cnblogs.com/codeskiller/p/6388620.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!