class Solution {
public:
int lengthOfLastWord(string s) {
}
};
58. 最后一个单词的长度
给你一个字符串 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”。
提示:
1 <= s.length <= 104
s
仅有英文字母和空格 ' '
组成s
中至少存在一个单词原站题解
python3 解法, 执行用时: 52 ms, 内存消耗: 16 MB, 提交时间: 2023-09-27 15:08:38
class Solution: def lengthOfLastWord(self, s: str) -> int: n = len(s) ans = 0 # 倒序遍历 for i in range(n-1, -1, -1): if s[i] != " ": ans += 1 else: if ans: return ans return ans
golang 解法, 执行用时: 0 ms, 内存消耗: 2 MB, 提交时间: 2023-09-27 15:08:10
func lengthOfLastWord(s string) (ans int) { index := len(s) - 1 for s[index] == ' ' { index-- } for index >= 0 && s[index] != ' ' { ans++ index-- } return }
cpp 解法, 执行用时: 0 ms, 内存消耗: 6.8 MB, 提交时间: 2023-09-27 15:07:54
class Solution { public: int lengthOfLastWord(string s) { int index = s.size() - 1; while (s[index] == ' ') { index--; } int wordLength = 0; while (index >= 0 && s[index] != ' ') { wordLength++; index--; } return wordLength; } };
java 解法, 执行用时: 0 ms, 内存消耗: 39.7 MB, 提交时间: 2023-09-27 15:07:39
class Solution { public int lengthOfLastWord(String s) { int index = s.length() - 1; while (s.charAt(index) == ' ') { index--; } int wordLength = 0; while (index >= 0 && s.charAt(index) != ' ') { wordLength++; index--; } return wordLength; } }
javascript 解法, 执行用时: 44 ms, 内存消耗: 40.9 MB, 提交时间: 2023-09-27 15:07:17
/** * @param {string} s * @return {number} */ var lengthOfLastWord = function(s) { let end = s.length - 1; while(end >= 0 && s[end] == ' ') end--; if(end < 0) return 0; let start = end; while(start >= 0 && s[start] != ' ') start--; return end - start; };
java 解法, 执行用时: 0 ms, 内存消耗: 39.6 MB, 提交时间: 2023-09-27 15:07:05
class Solution { public int lengthOfLastWord(String s) { int end = s.length() - 1; while(end >= 0 && s.charAt(end) == ' ') end--; if(end < 0) return 0; int start = end; while(start >= 0 && s.charAt(start) != ' ') start--; return end - start; } }
python3 解法, 执行用时: 48 ms, 内存消耗: 13.5 MB, 提交时间: 2020-11-02 23:33:02
class Solution: def lengthOfLastWord(self, s: str) -> int: return len(re.split('\s+', s.strip())[-1])