给定一个字符串和一个子串。子串中的字符可能重复,输出子串出现的次数。(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); } }