题目的主要信息:
- 给定一个字符串str,随机输入一个字母word
- 判断该字母在这个字符串中出现的次数
- 字母以字符串的形式输入
具体做法:
我们将输入的字母转化成char型字符,然后遍历字符串str,将每个遍历到的字符转化成char型后再与字母比较,如果相同则计数。
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 c = word.charAt(0); //将第二个字符串用字符表示
int res = 0;
for(int i = 0; i < str.length(); i++) //遍历第一个字符串
if(c == str.charAt(i)) //比较每个字符与c是否相同
res++; //相同则计数
return res;
}
}
复杂度分析:
- 时间复杂度:,其中为字符串str的长度,遍历该字符串
- 空间复杂度:,无额外空间