力扣 --- 最后一个单词的长度

题目描述:

给你一个字符串 s,由若干单词组成,单词前后用一些空格字符隔开。返回字符串中 最后一个 单词的长度。

单词 是指仅由字母组成、不包含任何空格字符的最大子字符串。

示例 1:

复制代码
输入:s = "Hello World"
输出:5
解释:最后一个单词是“World”,长度为5。

示例 2:

复制代码
输入:s = "   fly me   to   the moon  "
输出:4
解释:最后一个单词是“moon”,长度为4。

示例 3:

复制代码
输入:s = "luffy is still joyboy"
输出:6
解释:最后一个单词是长度为6的“joyboy”。

思路描述:

这道题很简单,用Java我们很容易想到两种方法,第一种是从后往前进行遍历,直到遇到第一个单词。第二种是将字符串按空格分割,然后找最后一个元素的长度。

当然,第一种方法是一个比较好的方法,无论在时间还是在空间上。

代码:

思路一:

java 复制代码
class Solution {
    public int lengthOfLastWord(String s) {
        int high=s.length()-1;
        while(s.charAt(high)==' '){
            high--;
        }
        int low=high-1;
        while(low>=0 && s.charAt(low)!=' '){
            low--;
        }
        return high-low;
    }
}

提交结果:

思路二:

java 复制代码
class Solution {
    public int lengthOfLastWord(String s) {
        String[] sarr=s.split(" ");
        return sarr[sarr.length-1].length();
    }
}
相关推荐
一起学安全技术2 分钟前
拆大模型 03|注意力的一句话版本:不用论文讲清 Attention
深度学习·算法·语言模型·transformer
CyrusYiVPP1 小时前
手写 MCP Server:给问答机器人接上本地文件工具,Python 实战第 13 期
人工智能·python
Delightrs1 小时前
Rust LeetCode238 算法题解
开发语言·算法·rust
特立独行的猫A1 小时前
cj-tauri:用仓颉写桌面与鸿蒙 PC 应用
java·后端·python
自信150413057592 小时前
重生之从0开始学习c++之——vector-中篇
c++·学习·算法
文丑颜不良啊2 小时前
LeetCode2501~2520题目解析
java·leetcode
qq_1588954111110 小时前
AI 音乐生成完成后,音频 URL 为什么会过期?一套可恢复的交付方案
python·api·ai音乐
Warson_L12 小时前
高性能架构设计
python·go
databook12 小时前
新数据到手,先跑哪几步检查
python·数据分析