LeedCode 之 Length of Last Word

本文介绍了一种解决LengthofLastWord问题的方法,重点在于如何处理特殊字符串,并通过示例代码展示了如何获取最后一个单词的长度。

题目链接:Length of Last Word
这道题就相当的简单的,主要是对特殊字符串的处理,而且题目中说“If the last word does not exist, return 0.”我就一直以为当最后一个字符是“ ”,就表示要return0,实际不是这样的。其需要返回的是最后一个单词的长度,除非整个字符串中没有一个单词。
直接上代码就行:

public class Solution {
    public int lengthOfLastWord(String s) {
         int len = s.length();
         if(len==0)
             return 0;//首先处理字符串为空的时候
         String[] word;
         word = s.split(" ");
         int leng = word.length;
         if(leng==0)
             return 0;//在这里需要处理字符串中没有单词的情况下
         int re = word[leng-1].length();
         return re;
        }
}
### LeetCode Problem 58: Length of Last Word The goal is to find the length of the last word in a string. A word is defined as a maximal substring consisting of non-space characters only. #### Java Implementation Below is an efficient implementation using built-in methods: ```java class Solution { public int lengthOfLastWord(String s) { if (s == null || s.isEmpty()) return 0; String trimmedString = s.trim(); // Remove leading and trailing spaces[^3] if (trimmedString.isEmpty()) return 0; // Split by space, then get the last element's length. String[] words = trimmedString.split(" "); return words[words.length - 1].length(); } } ``` This code first checks if the input string `s` is either null or empty. If so, it returns zero immediately. Next, any leading and trailing whitespace from the string gets removed with `trim()`. Should this result be empty after trimming, again, zero is returned because no valid words exist. Finally, splitting the cleaned-up string into substrings based on spaces allows accessing the final array component which represents the last word whose length can thus be determined easily. For performance optimization considerations when dealing specifically with large strings where memory usage might become critical due to creating intermediate arrays during split operations, another approach directly iterates backward through the given string until encountering its initial non-whitespace character marking end-of-last-word boundary while counting letters encountered along the way without needing additional storage beyond single integer counter variable holding current count value.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值