首页 > 其他 > 详细

[LeetCode] #58 最后一个单词的长度

时间:2021-07-27 09:46:04      阅读:31      评论:0      收藏:0      [点我收藏+]

给你一个字符串 s,由若干单词组成,单词之间用单个或多个连续的空格字符隔开。返回字符串中最后一个单词的长度。如果不存在最后一个单词,请返回 0 。

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

输入:s = "Hello World"

输出:5

先切割,再看最后一个字符串的长度

class Solution {
    public int lengthOfLastWord(String s) {
        String ss[] = s.split("\\s+");
        return ss.length == 0 ? 0 : ss[ss.length - 1].length();
    }
}

另一种方法,从字符串后面开始找空格

class Solution {
    public int lengthOfLastWord(String s) {
        int count = 0;
        for (int i = s.length() - 1; i >= 0; i--)
        {
            if (s.charAt(i) != ‘ ‘) count++; 
            if (s.charAt(i) == ‘ ‘ && count != 0) break;
        }
        return count;
    }
}

知识点:

public String[] split(String regex, int limit)

public String[] split(String regex)

split() 方法根据匹配给定的正则表达式来拆分字符串。

注意: . 、 | 和 * 等转义字符,必须得加 \\。

注意:多个分隔符,可以用 | 作为连字符。

regex -- 正则表达式分隔符。

limit -- 分割的份数。

总结:遍历时,正着来不行就倒着来。

[LeetCode] #58 最后一个单词的长度

原文:https://www.cnblogs.com/jpppp/p/15063784.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!