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

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

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


2020酷家乐笔试原题:


20200315105415170.png

用的是最简单的,暴力求解法。


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);
    }
}


相关文章
|
7天前
|
安全 Java 索引
Java字符串类详解
Java字符串类详解
15 1
|
12天前
|
机器学习/深度学习 移动开发 测试技术
《手把手教你》系列技巧篇(五十一)-java+ selenium自动化测试-字符串操作-下篇(详解教程)
【5月更文挑战第15天】自动化测试中进行断言的时候,我们可能经常遇到的场景。从一个字符串中找出一组数字或者其中的某些关键字,而不是将这一串字符串作为结果进行断言。这个时候就需要我们对字符串进行操作,宏哥这里介绍两种方法:正则和字符串切片函数split()。
31 2
|
2天前
|
存储 Java 测试技术
滚雪球学Java(47):String类教程:如何在Java中使用字符串操作
【6月更文挑战第1天】🏆本文收录于「滚雪球学Java」专栏,专业攻坚指数级提升,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收藏&&订阅!持续更新中,up!up!up!!
13 2
滚雪球学Java(47):String类教程:如何在Java中使用字符串操作
|
4天前
|
存储 Java 索引
Java的字符串基本操作
Java的字符串基本操作
|
5天前
|
Java 开发工具 git
Java判断字符串是否为空
Java判断字符串是否为空
10 0
|
5天前
|
存储 Java
java使用pdfbox 3.0版本删除pdf文件中指定字符所在行,生成新的pdf文件
【5月更文挑战第25天】java使用pdfbox 3.0版本删除pdf文件中指定字符所在行,生成新的pdf文件
12 1
|
7天前
|
Java
DAY-1 | Java数据结构之链表:删除无头单链表中等于给定值 val 的所有节点
力扣203题解:使用时间复杂度为O(n)的思路删除链表中所有值为key的元素。引入辅助指针pre,记录cur的前一个节点,遍历链表时,若cur.val!=key,pre和cur同时前进;若cur.val==key,则pre.next=cur.next,cur继续前进,确保pre不急于跟随以处理连续相同值的情况。遍历结束后,处理头节点可能需要删除的特殊情况。
19 0
|
7天前
|
Java
Java集合类ArrayList应用 | 如何在字符串s1中删除有在字符串s2出现的字符?
这是一个关于Java编程面试题的摘要,题目要求从字符串s1中删除s2中存在的字符。解题思路包括使用ArrayList或StringBuilder实现。ArrayList实现时,遍历s1,如果字符不在s2中,则添加到ArrayList;StringBuilder实现有两种方法,一是新建StringBuilder并追加s1,然后遍历删除s2中的字符,二是直接在原地修改s1的StringBuilder对象。代码示例中展示了这些方法。
26 3
|
10天前
|
缓存 安全 Java
java-- 字符串+拼接详解, 性能调优 (底层原理实现)
java-- 字符串+拼接详解, 性能调优 (底层原理实现)
18 0
|
13天前
|
存储 Java
Java程序设计基础——字符串运算符
Java程序设计基础——字符串运算符