LeetCode 58 最后一个单词的长度
1. 题目地址
https://leetcode.cn/problems/length-of-last-word/description/?envType=study-plan-v2&envId=top-interview-150
2. 题解
这道题由于要求最后一个单词的长度,因此我们可以从后往前遍历。在遍历的时候统计字符的个数即可。遇到空格中止。
但是需要注意:由于会出现类似于:" fly me to the moon "的字符串。因此,我们从后往前遍历的时候需要处理空格的问题。具体策略如下:
1. 如果当前为空格,且flag = false,那么就跳过当前元素,继续往前遍历。其中,flag代表是否遍历到了字母。
2. 如果当前为空格,且flag = true, 那么直接退出循环,直接输出长度即可。
3. 如果当前不是空格,那么将flag = true(代表遍历到了字母),将统计的字符个数+1,继续向前遍历即可。
3. 代码
class Solution {
public:
int lengthOfLastWord(string s) {
int count = 0;
bool flag = false;
for(int i = s.size() - 1; i >= 0; i --){
if(s[i] == ' ' && flag == false){
continue;
}
if(s[i] == ' ' && flag == true){
break;
}
if(s[i] != ' '){
flag = true;
count++;
if(i == 0){
break;
}
}
}
return count;
}
};
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现