您当前的位置: 首页 >  Java

_waylau

暂无认证

  • 13浏览

    0关注

    275博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

【Java 数据结构及算法实战】系列 015:HJ1 字符串最后一个单词的长度

_waylau 发布时间:2022-10-03 21:06:32 ,浏览量:13

描述

计算字符串最后一个单词的长度,单词以空格隔开,字符串长度小于5000。(注:字符串末尾不以空格为结尾) 输入描述:

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

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

该题型主要是考察字符串的操作。解法步骤如下

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

    按照空格对输入字符串进行分组

    取数据组中最后一个元素

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

代码如下:

 * Copyright (c) waylau.com, 2022. All rights reserved.  */  package com.waylau.nowcoder.exam.oj.huawei;import java.util.Scanner;/**  * HJ1 字符串最后一个单词的长度.  * 描述:计算字符串最后一个单词的长度,单词以空格隔开,字符串长度小于5000。(注:字符串末尾不以空格为结尾)  * 输入描述:输入一行,代表要计算的字符串,非空,长度小于5000。  * 输出描述:输出一个整数,表示输入字符串最后一个单词的长度。  *  * @author Way Lau  * @since 2022-08-05  */public class HJ1LengthOfTheLastWordInTheString {

    public static void main(String[] args) {        // 输入一行,代表要计算的字符串,非空,长度小于5000。         Scanner sc = new Scanner(System.in);         String in = sc.nextLine();                 // 按照空格对输入字符串进行分组         String[] words = in.split(" ");                 // 取数据组中最后一个元素         String lastWord = words[words.length - 1];                 // 输出一个整数,表示输入字符串最后一个单词的长度。         System.out.println(lastWord.length());                 // 关闭资源         sc.close();     } }

用到了String的split、length方法,同时也用到了数组。代码运行结果如下。

hello world

5 解法2

也可以采用字符的操作。解法步骤如下

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

    对输入字符串进行倒序遍历,遇到第一个空格则停止

    遍历的非空字符数即为最后一个单词的长度

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

 * Copyright (c) waylau.com, 2022. All rights reserved.  */  package com.waylau.nowcoder.exam.oj.huawei;import java.util.Scanner;/**  * HJ1 字符串最后一个单词的长度.  * 描述:计算字符串最后一个单词的长度,单词以空格隔开,字符串长度小于5000。(注:字符串末尾不以空格为结尾)  * 输入描述:输入一行,代表要计算的字符串,非空,长度小于5000。  * 输出描述:输出一个整数,表示输入字符串最后一个单词的长度。  *  * @author Way Lau  * @since 2022-08-05  */public class HJ1LengthOfTheLastWordInTheString2 {

    public static void main(String[] args) {        // 输入一行,代表要计算的字符串,非空,长度小于5000。         Scanner sc = new Scanner(System.in);         String in = sc.nextLine();                 // 对输入字符串进行倒序遍历,遇到第一个空格则停止.         // 遍历的非空字符数即为最后一个单词的长度         int lastWordLength = 0;        for (int i = in.length() -1 ; i >=0; i--) {            char c = in.charAt(i);                         if (c == ' ') {                break;             }                          lastWordLength ++;         }                 // 输出一个整数,表示输入字符串最后一个单词的长度。         System.out.println(lastWordLength);                 // 关闭资源         sc.close();     } }

参考引用

    本系列归档至https://github.com/waylau/nowcoder-exam-oj

    《Java 数据结构及算法实战》:https://github.com/waylau/java-data-structures-and-algorithms-in-action

    《数据结构和算法基础(Java 语言实现)》(柳伟卫著,北京大学出版社出版):https://item.jd.com/13014179.html           描述

    计算字符串最后一个单词的长度,单词以空格隔开,字符串长度小于5000。(注:字符串末尾不以空格为结尾)     输入描述:

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

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

    该题型主要是考察字符串的操作。解法步骤如下

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

    按照空格对输入字符串进行分组

    取数据组中最后一个元素

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

    代码如下:

     * Copyright (c) waylau.com, 2022. All rights reserved.      */      package com.waylau.nowcoder.exam.oj.huawei;import java.util.Scanner;/**      * HJ1 字符串最后一个单词的长度.      * 描述:计算字符串最后一个单词的长度,单词以空格隔开,字符串长度小于5000。(注:字符串末尾不以空格为结尾)      * 输入描述:输入一行,代表要计算的字符串,非空,长度小于5000。      * 输出描述:输出一个整数,表示输入字符串最后一个单词的长度。      *      * @author Way Lau      * @since 2022-08-05      */public class HJ1LengthOfTheLastWordInTheString {

        public static void main(String[] args) {        // 输入一行,代表要计算的字符串,非空,长度小于5000。             Scanner sc = new Scanner(System.in);             String in = sc.nextLine();                     // 按照空格对输入字符串进行分组             String[] words = in.split(" ");                     // 取数据组中最后一个元素             String lastWord = words[words.length - 1];                     // 输出一个整数,表示输入字符串最后一个单词的长度。             System.out.println(lastWord.length());                     // 关闭资源             sc.close();         }     }

    用到了String的split、length方法,同时也用到了数组。代码运行结果如下。

    hello world

    5     解法2

    也可以采用字符的操作。解法步骤如下

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

    对输入字符串进行倒序遍历,遇到第一个空格则停止

    遍历的非空字符数即为最后一个单词的长度

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

     

     * Copyright (c) waylau.com, 2022. All rights reserved.      */      package com.waylau.nowcoder.exam.oj.huawei;import java.util.Scanner;/**      * HJ1 字符串最后一个单词的长度.      * 描述:计算字符串最后一个单词的长度,单词以空格隔开,字符串长度小于5000。(注:字符串末尾不以空格为结尾)      * 输入描述:输入一行,代表要计算的字符串,非空,长度小于5000。      * 输出描述:输出一个整数,表示输入字符串最后一个单词的长度。      *      * @author Way Lau      * @since 2022-08-05      */public class HJ1LengthOfTheLastWordInTheString2 {

        public static void main(String[] args) {        // 输入一行,代表要计算的字符串,非空,长度小于5000。             Scanner sc = new Scanner(System.in);             String in = sc.nextLine();                     // 对输入字符串进行倒序遍历,遇到第一个空格则停止.             // 遍历的非空字符数即为最后一个单词的长度             int lastWordLength = 0;        for (int i = in.length() -1 ; i >=0; i--) {            char c = in.charAt(i);                             if (c == ' ') {                break;                 }                                  lastWordLength ++;             }                     // 输出一个整数,表示输入字符串最后一个单词的长度。             System.out.println(lastWordLength);                     // 关闭资源             sc.close();         }     }

    参考引用

    本系列归档至https://github.com/waylau/nowcoder-exam-oj

    《Java 数据结构及算法实战》:https://github.com/waylau/java-data-structures-and-algorithms-in-action

    《数据结构和算法基础(Java 语言实现)》(柳伟卫著,北京大学出版社出版):https://item.jd.com/13014179.html

描述

计算字符串最后一个单词的长度,单词以空格隔开,字符串长度小于5000。(注:字符串末尾不以空格为结尾) 输入描述:

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

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

该题型主要是考察字符串的操作。解法步骤如下

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

    按照空格对输入字符串进行分组

    取数据组中最后一个元素

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

代码如下:

 * Copyright (c) waylau.com, 2022. All rights reserved.  */  package com.waylau.nowcoder.exam.oj.huawei;import java.util.Scanner;/**  * HJ1 字符串最后一个单词的长度.  * 描述:计算字符串最后一个单词的长度,单词以空格隔开,字符串长度小于5000。(注:字符串末尾不以空格为结尾)  * 输入描述:输入一行,代表要计算的字符串,非空,长度小于5000。  * 输出描述:输出一个整数,表示输入字符串最后一个单词的长度。  *  * @author Way Lau  * @since 2022-08-05  */public class HJ1LengthOfTheLastWordInTheString {

    public static void main(String[] args) {        // 输入一行,代表要计算的字符串,非空,长度小于5000。         Scanner sc = new Scanner(System.in);         String in = sc.nextLine();                 // 按照空格对输入字符串进行分组         String[] words = in.split(" ");                 // 取数据组中最后一个元素         String lastWord = words[words.length - 1];                 // 输出一个整数,表示输入字符串最后一个单词的长度。         System.out.println(lastWord.length());                 // 关闭资源         sc.close();     } }

用到了String的split、length方法,同时也用到了数组。代码运行结果如下。

hello world

5 解法2

也可以采用字符的操作。解法步骤如下

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

    对输入字符串进行倒序遍历,遇到第一个空格则停止

    遍历的非空字符数即为最后一个单词的长度

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

 * Copyright (c) waylau.com, 2022. All rights reserved.  */  package com.waylau.nowcoder.exam.oj.huawei;import java.util.Scanner;/**  * HJ1 字符串最后一个单词的长度.  * 描述:计算字符串最后一个单词的长度,单词以空格隔开,字符串长度小于5000。(注:字符串末尾不以空格为结尾)  * 输入描述:输入一行,代表要计算的字符串,非空,长度小于5000。  * 输出描述:输出一个整数,表示输入字符串最后一个单词的长度。  *  * @author Way Lau  * @since 2022-08-05  */public class HJ1LengthOfTheLastWordInTheString2 {

    public static void main(String[] args) {        // 输入一行,代表要计算的字符串,非空,长度小于5000。         Scanner sc = new Scanner(System.in);         String in = sc.nextLine();                 // 对输入字符串进行倒序遍历,遇到第一个空格则停止.         // 遍历的非空字符数即为最后一个单词的长度         int lastWordLength = 0;        for (int i = in.length() -1 ; i >=0; i--) {            char c = in.charAt(i);                         if (c == ' ') {                break;             }                          lastWordLength ++;         }                 // 输出一个整数,表示输入字符串最后一个单词的长度。         System.out.println(lastWordLength);                 // 关闭资源         sc.close();     } }

参考引用

    本系列归档至https://github.com/waylau/nowcoder-exam-oj

    《Java 数据结构及算法实战》:https://github.com/waylau/java-data-structures-and-algorithms-in-action

    《数据结构和算法基础(Java 语言实现)》(柳伟卫著,北京大学出版社出版):https://item.jd.com/13014179.html    http://product.dangdang.com/29334623.html

关注
打赏
1651845987
查看更多评论
立即登录/注册

微信扫码登录

0.0380s