匹配字符串求子串在主串出现的的首位置

泽泽泽泽的猫 |浏览1152次
收藏|2022/03/25 13:01

满意回答

2022/03/25 13:30

你的算法完全不正确,当i,j都是0时,若if(s1[i]==p1[j]) 不成立,直接重新赋j=0;死循环了我改的你参考下public static int IsMatch(String s,String p) { int i=0; int j=0; int k=0; char[]s1=s.toCharArray();//主串 char[]p1=p.toCharArray();//子串 for(i=0; i<s1.length; i++) { j=i; while(k<p1.length && s1[j]==p1[k]) { k++; j++; } if(k>=p1.length) { return i; } k=0; } return -1; }

whoami1978

其他回答(0)
0人关注该问题
+1

 加载中...