题意整理

  • 给定一个字符串以及一个字母。
  • 统计字母在字符串中出现的次数。

方法一(循环)

1.解题思路

  • 首先获取字母的字符形式。
  • 然后遍历整个字符串,如果出现了对应字母,则计数加1。
  • 遍历完成之后,返回最终的计数。

动图展示: alt

2.代码实现

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        String string = "H e l l o ! n o w c o d e r";
        Scanner scanner= new Scanner(System.in);
        String word = scanner.next();
        scanner.close();
        System.out.println(check(string, word));
    }
    public static int check(String str,String word){
        //获取字母的字符形式
        char w=word.charAt(0);
        //用于计数
        int cnt=0;
        for(char c:str.toCharArray()){
            //如果出现了w,计数加一
            if(c==w){
                cnt++;
            }
        }
        return cnt;

    }
}

3.复杂度分析

  • 时间复杂度:假设字符串长度为n,需要循环n次,所以时间复杂度为O(n)O(n)
  • 空间复杂度:不需要额外的空间,所以空间复杂度为O(1)O(1)