给定一个字符串和一个子串。子串中的字符可能重复,输出子串出现的次数。(Java实现)
2020酷家乐笔试原题:
用的是最简单的,暴力求解法。
package Day43;
/**
* @Author Zhongger
* @Description 给定一个字符串和一个子串。子串中的字符可能重复,输出子串出现的次数。
* @Date 2020.3.15
*/
public class SubStringCountSolution {
public static void main(String[] args) {
String str="abcabcabca";
String sub="abca";
subStringCount(str,sub);
}
public static void subStringCount(String str,String sub){
int count=0;
for (int i = 0; i < str.length(); i++) {
int j=i;
int k=0;
while (j<str.length()&&k<sub.length()){
if (str.charAt(j)==sub.charAt(k)){
++j;
++k;
//匹配完
if (k==sub.length()-1){
++count;
}
}else {//不相同就输出
break;
}
}
}
System.out.println(count);
}
}