华为机试 牛客网 HJ1 字符串最后一个单词的长度

华为机试 牛客网 HJ1 字符串最后一个单词的长度

  • 描述
  • 输入描述
  • 输出描述
  • 示例一
  • 解法一
  • 解法二
  • 反思

描述

计算字符串最后一个单词的长度,单词以空格隔开,字符串长度小于5000。

输入描述

输入一行,代表要计算的字符串,非空,长度小于5000。

输出描述

输出一个整数,表示输入字符串最后一个单词的长度。

示例一

华为机试 牛客网 HJ1 字符串最后一个单词的长度_第1张图片

解法一

运行时间 33ms 占用内存 10804KB

import java.util.Scanner;
public class Main{
    
    public static void main(String[] args){
        
        Scanner sc = new Scanner(System.in);
        String in = sc.nextLine();
        String[] array = in.split(" ");
        System.out.println(array[array.length-1].length());
        
        
    }
    
}

解法二

运行时间 26ms 占用内存 10728KB

import java.util.Scanner;
public class Main{
    
public static void main(String[] args) {
    Scanner sc = new Scanner(System.in);
    String str = sc.nextLine();
    int length = str.length();
    int count = 0;
    for (int i = length - 1; i >= 0; i--) {
        if (str.charAt(i)==' ') { // 或者 if (str.substring(i, i + 1).equals(" ")) {
            break;
        }
        count++;
    }
    System.out.println(count);
}
    
    
}

反思

java输入的next()和nextLine()的区别
java中split()的使用细节
java中的chatAt(),codePointAt(),substring()的使用

你可能感兴趣的:(牛客网,华为机试)