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;
    }
};
相关推荐
lengjingzju41 分钟前
基于IMake的 GCC 编译与链接选项深度解析:构建高效、安全、可调试的现代软件
c++·安全·性能优化·软件构建·开源软件
xu_yule1 小时前
算法基础(数论)—算法基本定理
c++·算法·算数基本定理
CoderCodingNo1 小时前
【GESP】C++五级真题(结构体排序考点) luogu-B3968 [GESP202403 五级] 成绩排序
开发语言·c++·算法
YGGP3 小时前
【Golang】LeetCode 32. 最长有效括号
算法·leetcode
自然常数e3 小时前
字符函数和字符串函数
c语言·算法·visual studio
leaves falling3 小时前
c语言分数求和
算法
Das13 小时前
【机器学习】01_模型选择与评估
人工智能·算法·机器学习
星轨初途4 小时前
郑州轻工业大学2025天梯赛解题
c++·经验分享·笔记·算法·链表·剪枝
不忘不弃4 小时前
从字符串中提取数字
数据结构·算法