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

题目描述:

给你一个字符串 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();
    }
}
相关推荐
草莓熊Lotso9 分钟前
【LangChain】输出解析器全解:让大模型输出从 “聊天” 变 “机器可读”
服务器·数据库·python·langchain·pip
卷无止境15 分钟前
Python 脚本工程化:从"能跑就行"到"生产级代码"
后端·python
卷无止境16 分钟前
Python 函数式编程:从思想到实践
后端·python
满怀冰雪9 小时前
06-自动微分入门:用 Paddle 计算梯度
人工智能·python·深度学习·paddle
可编程芯片开发11 小时前
基于MATLAB的PEF湍流风场生成器模拟与仿真
算法
罗西的思考12 小时前
【Agentic RL / 强化学习 / OPD】OpenClaw-RL 源码阅读笔记 --- (9)--- Reward Judging
人工智能·算法·机器学习
Mr.HeBoYan13 小时前
一次持续三天才出现的丢包故障——深入解析 DPDK Memory Ordering、rte_ring 与 CPU Memory Barrier (下)
linux·网络·算法·架构·dpdk
wabs66614 小时前
关于图论【深度优先搜索的理论基础】
算法·深度优先·图论
先吃饱再说14 小时前
LeetCode 101. 对称二叉树
算法
是Dream呀15 小时前
人眼看不出的伪造,AI如何识别?实测合合信息跨模态鉴伪与去反光技术
算法