最后一个单词的长度
给你一个字符串 s,由若干单词组成,单词前后用一些空格字符隔开。返回字符串中 最后一个 单词的长度。
单词 是指仅由字母组成、不包含任何空格字符的最大子字符串。
来源:力扣(LeetCode)
链接:https://leetcode.cn/problems/length-of-last-word
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
思路:
1.先统计字符串中最后一个单词的位置;
2.然后从这个位置往前遍历,直到找到空格为止;
3.最后返回空格和单词结束位置之间的长度差即可。
使用C++
class Solution {
public:
int lengthOfLastWord(string s) {
int end = s.length() - 1;
// 去除字符串末尾的空格
while (end >= 0 && s[end] == ' ') {
end--;
}
// 计算最后一个单词的结束位置
int start = end;
while (start >= 0 && s[start] != ' ') {
start--;
}
// 返回最后一个单词的长度
return end - start;
}
};
使用C语言
int lengthOfLastWord(char * s){
int end = strlen(s) - 1;
// 去除字符串末尾的空格
while (end >= 0 && s[end] == ' ') {
end--;
}
// 计算最后一个单词的结束位置
int start = end;
while (start >= 0 && s[start] != ' ') {
start--;
}
// 返回最后一个单词的长度
return end - start;
}

浙公网安备 33010602011771号