编程语言
首页 > 编程语言> > java简单算法: 实现 strStr()

java简单算法: 实现 strStr()

作者:互联网

问题

解决

class Solution {
    public int strStr(String haystack, String needle) {
        int n1=haystack.length(); //n1为haystack的长度
        int n2=needle.length();   //n2为needle取字符
        
        for(int i=0;i+n2<=n1;i++){     //因为如果当i+n2大于n1时,表示n1中必定无n2
            boolean flag=true;   //作为判断是否完全找到匹配字符的依据
            for(int j=0;j<n2;j++){   //比较n2的所有字符是否都能再n1中找到
                if(haystack.charAt(i+j)!=needle.charAt(j)){     //如果找不到,直接进行下一次循环
                    flag=false;
                    break;
                }
            }
            if(flag){
                return i;
            }
        }
           return -1;
        }
    }
// 这种思想,先假定事件为真,如果出现不满足的就跳过,直到完成全部事件,如果为真就返回真,假就返回假

总结

标签:java,int,needle,算法,字符串,strStr,haystack,n2
来源: https://www.cnblogs.com/zhangsanM/p/16436088.html