刷题专栏(二):最后一个单词的长度

简介: 刷题专栏(二):最后一个单词的长度

前言

今天我们来看《最后一个单词的长度》这道题,难度简单。

欢迎大家关注我的刷题专栏,一起学习算法。

image.png

算法题:最后一个单词的长度

这道题可太简单了,只需要你会用一些基础的方法函数就能很快解出来。

一个长字符串,简单说的话,就是一个英文短句而已。

一下子就能找到规律,那就是每一个单词之间都使用空格来分隔开。

假如我们利用java的split方法将字符串根据空格来转换成字符串数组,这样就根本不需要看其他的单词,只需要拿出数组中最后的一个元素,并且将这个元素单词的长度返回给主方法即可。

再或者,使用indexOf、lastIndexOf方法直接获取到最后一个单词,只要是找到具体的规律后,这个问题就很好解决了。

代码展示

这道题的代码量格外的少,一行代码就能搞定,使用的是上述所说的第一种方法,因为这种更简单一些。

public class Solution {
    public static void main(String[] args) {
        Solution solution = new Solution();
        System.out.println(solution.lengthOfLastWord("Hello World"));
    }
    public int lengthOfLastWord(String s) {
        String[] strings = s.split(" ");
        return strings[strings.length - 1].length();
    }
}

执行结果展示:

通过如期而至。

image.png

内存的占用情况,推测一下是数组的原因,所以特地去试了一下官方提供的解决方法,好吧,还是数组更耗内存。

使用charAt方法来获取每一个字符,直到碰到空格终止,这样执行的情况内存会相对小一些,就是代码量大一些。

总结

简单的函数使用,从运行结果上来看,内存占用比很大,大家可以考虑一下如何降低一下内存的使用。

目录
相关文章
|
5月前
|
算法
力扣经典150题第十九题:最后一个单词的长度
力扣经典150题第十九题:最后一个单词的长度
31 0
|
6月前
|
C++
【力扣经典面试题】58. 最后一个单词的长度
【力扣经典面试题】58. 最后一个单词的长度
|
6月前
|
存储 算法 索引
刷题专栏(二十六):字符串中的第一个唯一字符
刷题专栏(二十六):字符串中的第一个唯一字符
100 1
刷题专栏(二十六):字符串中的第一个唯一字符
|
6月前
|
算法 Java
刷题专栏(二十九):重复的子字符串
刷题专栏(二十九):重复的子字符串
133 2
|
6月前
|
算法
刷题专栏(二十):单词规律
刷题专栏(二十):单词规律
60 0
LeetCode150道面试经典题--最后一个单词的长度(简单)
给你一个字符串 s,由若干单词组成,单词前后用一些空格字符隔开。返回字符串中 最后一个 单词的长度。
42 0
|
存储 自然语言处理 索引
【刷题日记】 最常见的单词
本次刷题日记的第 36 篇,力扣题为:最常见的单词 ,简单
|
Python Cloud Native
【刷题日记】415. 字符串相加
本次刷题日记的第 48 篇,力扣题为:415. 字符串相加 ,简单
|
测试技术
LeetCode刷题集(六)(LeetCode58.最后一个单词长度)
LeetCode刷题集(六)(LeetCode58.最后一个单词长度)
61 0
华为机试每日一练--第四题:字符串最后一个单词的长度
计算字符串最后一个单词的长度,单词以空格隔开,字符串长度小于5000。(注:字符串末尾不以空格为结尾)
华为机试每日一练--第四题:字符串最后一个单词的长度