给定一个字符串和一个子串。子串中的字符可能重复,输出子串出现的次数。(Java实现)

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

猜你喜欢

转载自blog.csdn.net/weixin_43395911/article/details/104874847
今日推荐