2024-07-08 计算某字符出现次数 && 字符串最后一个单词的长度
About 1 min
计算某字符出现次数
接受一个由字母、数字和空格组成的字符串,和一个字符,然后输出输入字符串中该字符的出现次数。
解题思路
简单说下思路,很简单的一道题,主要考察Java基础知识的应用。
亮点
- char
- 分情况判断
- 时间复杂度为 O(1)
- 空间复杂度为 O(1)
实现
public class Test004 {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
// 注意 hasNext 和 hasNextLine 的区别
String input1 = in.nextLine();
String input2 = in.nextLine();
int count = 0;
// System.out.print((int)' ');
for (int i = 0; i < input1.length(); i++) {
if (input2.charAt(0) == input1.charAt(i)) {
count++;
continue;
}
if (input2.charAt(0) == ' ') {
continue;
}
if (input2.charAt(0) >= '1' && input2.charAt(0) <= '9') {
continue;
}
// 字母的情况
if (Math.abs((int)input2.charAt(0) - (int)input1.charAt(i)) == 32) {
count++;
}
}
System.out.print(count);
}
}
字符串最后一个单词的长度
解题思路
简单说下思路,很简单的一道题,主要考察Java基础知识的应用。
亮点
- Scanner。
- 时间复杂度为 O(1)
- 空间复杂度为 O(1)
实现
public class Test003 {
/**
* 计算字符串最后一个单词的长度,单词以空格隔开,字符串长度小于5000。(注:字符串末尾不以空格为结尾)
* 输入:hello now coder
* 输出:5
*
* @param args 输入一行,代表要计算的字符串,非空,长度小于5000。
*/
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
String input = in.nextLine();
if (!input.contains(" ")) {
System.out.println(input.length());
return;
}
String[] split = input.split(" ");
System.out.println(split[split.length - 1].length());
}
}