LeetCode 58.最后一个单词的长度 C++

LeetCode 58.最后一个单词的长度 C++

思路🤔:

先解决当最后字符为空格的情况 ,如果最后字符为空格下标就往后移动,直到不为空格才停止,然后用rfind查询空格找到的就是最后一个单词的起始位置,最后相减就是单词的长度。

代码🔎:

c++ 复制代码
class Solution {
public:
    int lengthOfLastWord(string s) {
            int i = s.size() - 1;
            while(s[i] == ' ') //当末尾为空格时
            {
                i--; //找出最后一个空格的前一个字母
            }
            int j = s.size() - 1 - i; //计算出空格占多少个字符
            int found = s.rfind(' ',i);
            int num = s.size() - 1 - found - j; //相减则是单词长度
            return num;
    }
};
相关推荐
老马啸西风2 分钟前
成熟企业级技术平台-09-加密机 / 密钥管理服务 KMSS(Key Management & Security Service)
人工智能·深度学习·算法·职场和发展
cooldream200912 分钟前
当代 C++ 的三大技术支柱:资源管理、泛型编程与模块化体系的成熟演进
开发语言·c++
Ulana23 分钟前
计算机基础10大高频考题解析
java·人工智能·算法
Queenie_Charlie33 分钟前
数字去重(set)
数据结构·c++·set
圣保罗的大教堂1 小时前
leetcode 3433. 统计用户被提及情况 中等
leetcode
Ayanami_Reii1 小时前
区间不同数的个数-树状数组/线段树/莫队/主席树
数据结构·c++·算法·线段树·树状数组·主席树·莫队
李玮豪Jimmy1 小时前
Day37:动态规划part10(300.最长递增子序列、674.最长连续递增序列 、718.最长重复子数组)
算法·动态规划
大筒木老辈子1 小时前
C++笔记---并发支持库(atomic)
java·c++·笔记
歌_顿1 小时前
Embedding 模型word2vec/glove/fasttext/elmo/doc2vec/infersent学习总结
人工智能·算法
zero_hz1 小时前
核心区分:用户态/内核态切换 vs. 程序阻塞
c++·io·内核态用户态