✅创作者:陈书予
🎉个人主页:陈书予的个人主页
🍁陈书予的个人社区,欢迎你的加入: 陈书予的社区
🌟专栏地址: Java华为OD机试真题(2022&2023)
文章目录
- 1. 题目描述
- 2. 输入描述
- 3. 输出描述
- 4. Java算法源码
- 5. 测试
- 6.解题思路
1. 题目描述
写出一个程序,接受一个由字母、数字和空格组成的字符串,和一个字符,然后输出输入字符串中该字符的出现次数。(不区分大小写字母)
2. 输入描述
第一行输入一个由字母、数字和空格组成的字符串,第二行输入一个字符(保证该字符不为空格)。
3. 输出描述
输出输入字符串中含有该字符的个数。(不区分大小写字母)
4. Java算法源码
public static void main(String[] args) {Scanner in = new Scanner(System.in);String input1 = in.nextLine();String input2 = in.nextLine();int count = countOccurrences(input1, input2);System.out.println(count);}private static int countOccurrences(String str, String target) {String lowercaseStr = str.toLowerCase();String lowercaseTarget = target.toLowerCase();int count = 0;int index = 0;while (index != -1) {index = lowercaseStr.indexOf(lowercaseTarget, index);if (index != -1) {count++;index += lowercaseTarget.length();}}return count;}
5. 测试
示例输入 | 示例输出 |
---|---|
第一行 csy huawei OD java。 第二行 a | 3 |
第一行 csy huawei csy 。 第二行 s | 2 |
6.解题思路
- 读取输入的字符串和目标字符。
- 将字符串和目标字符转换为小写,以实现不区分大小写的匹配。
- 使用
indexOf
方法在字符串中搜索目标字符,并记录出现次数。 - 循环执行步骤3,直到无法找到目标字符。
- 返回计数结果,表示目标字符在字符串中的出现次数。