• Java 练习(获取一个字符串在另一个字符串中的出现次数)


    package com.klvchen.exer;
    
    import org.junit.Test;
    
    public class StringDemo1 {
        /*
        获取一个字符串在另一个字符串中的出现次数。
        比如:获取 "ab" 在 "abkkcadkabkebfkabkskab" 中出现的次数
         */
    
        public int getCount(String mainStr, String subStr){
            int mainLength = mainStr.length();
            int subLength = subStr.length();
            int count = 0;
            int index = 0;
    
            if (mainLength >= subLength){
    
                //方式一:
    //            while ((index = mainStr.indexOf(subStr)) != -1){
    //                count++;
    //                mainStr = mainStr.substring(index + subStr.length());
    //            }
                //方式一的改进
                while ((index = mainStr.indexOf(subStr, index)) != -1){
                    count++;
                    index += subLength;
                }
    
                return count;
            }else {
                return 0;
            }
        }
    
        @Test
        public void testGetCount(){
            String mainStr = "abkkcadkabkebfkabkskab";
            String subStr = "ab";
            int count = getCount(mainStr, subStr);
            System.out.println(count);
        }
    }
    
    

  • 相关阅读:
    前缀和
    不用加减乘除做加法
    数组中重复的数字
    滑动窗口的最大值
    矩阵中的路径
    Redis 和 Memcached 的区别 Tair
    机器人的运动范围
    汉诺塔问题
    洗牌算法
    斐波那契查找算法(黄金分割查找算法)
  • 原文地址:https://www.cnblogs.com/klvchen/p/15219761.html
Copyright © 2020-2023  润新知