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

给定一个仅包含大小写字母和空格 ' ' 的字符串,返回其最后一个单词的长度。

如果不存在最后一个单词,请返回 0 。

说明:一个单词是指由字母组成,但不包含任何空格的字符串。

示例:

输入: "Hello World"
输出: 5

思路:
1.判断是否为空串,为空则返回0
2.利用split以空格为分割
3.要判断一下给定字符串是否只包含空格,如是则返回0
4.返回字符串数组中最后一个字符串长度

代码如下:

 public int lengthOfLastWord(String s) {
	        if(s.length()==0 || s==null){
	        	return 0;
	        }
	        String[] ss=s.split(" ");
	        if(ss.length==0){
	        	return 0;
	        }else{
	        	return ss[ss.length-1].length();
	        }
	        
	    }

总结:
string.trim方法:清楚掉字符串首尾的空格。
string.lastIndexOf()返回()中最后出现的位置索引

利用上述方法求解也也不错,代码如下:

public int lengthOfLastWord(String s) {
        
        String tmp = s.trim();
        if(tmp.length() == 0)return 0;

        StringBuilder sb = new StringBuilder(tmp);
        int index = tmp.lastIndexOf(' ');

        // System.out.println("最后一个空格的位置:******"+index);

        String result = sb.substring(index+1);

        // System.out.println("拆分后的字符串:******"+result);

        return result.length();
    }

猜你喜欢

转载自blog.csdn.net/weixin_43777983/article/details/89370924