图解 | LeetCode #58 最后一个单词的长度
Posted 程序员大咖
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了图解 | LeetCode #58 最后一个单词的长度相关的知识,希望对你有一定的参考价值。
????????关注后回复 “进群” ,拉你进程序员交流群????????
作者丨微木
来源丨编程狂想曲
你好,我是微木。
今天分享的内容是LeetCode中58.最后一个单词的长度 简单 这个题目。
题目描述:
给你一个字符串 s,由若干单词组成,单词之间用空格隔开。返回字符串中最后一个单词的长度。如果不存在最后一个单词,请返回 0 。
单词 是指仅由字母组成、不包含任何空格字符的最大子字符串。
示例:
输入:s = "Hello World"
输出:5
思路分析
由于字符串是由若干个单词组成,且彼此之间用空格隔开。那么,可以将空格作为分隔符,来将原字符串拆分为字符串数组。
然后,从后往前遍历该数组,如果当前考察的字符串是""则继续,直到当前考察的字符串不是"",则表示找到了最后一个单词,返回其长度即可。如果,遍历结束之后没有返回,则说明不存在最后一个字符,因此返回0。
代码实现:
另外一个思路是:
首先,将给定字符串的首尾空格去掉。
然后,从最后一个字符开始遍历,在遍历过程中,如果当前考察的字符是空格' ',则表示找到了最后一个单词。此时,返回s.length-1-end,即使最后一个单词的长度。其中end表示从后往前第一个空格' '的位置。
如果整个遍历结束之后,还没有返回,则表示给定的字符串只包含一个单词或一个单词都没有。此时,直接返回s.length即可。
代码实现:
今天的分享就到这里了
错误或不足之处
欢迎留言指出
下一篇我们将学习新的内容,敬请期待
-End-
最近有一些小伙伴,让我帮忙找一些 面试题 资料,于是我翻遍了收藏的 5T 资料后,汇总整理出来,可以说是程序员面试必备!所有资料都整理到网盘了,欢迎下载!
点击????卡片,关注后回复【面试题
】即可获取
在看点这里好文分享给更多人↓↓
以上是关于图解 | LeetCode #58 最后一个单词的长度的主要内容,如果未能解决你的问题,请参考以下文章
Python描述 LeetCode 58. 最后一个单词的长度