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;
    }
};
相关推荐
Delightrs39 分钟前
Rust LeetCode238 算法题解
开发语言·算法·rust
自信150413057591 小时前
重生之从0开始学习c++之——vector-中篇
c++·学习·算法
文丑颜不良啊1 小时前
LeetCode2501~2520题目解析
java·leetcode
ShineWinsu4 小时前
对于Qt:QDial常见属性以及信号的解析
开发语言·c++·qt·gui·客户端·旋钮·qdial
科技苑12 小时前
C++ CAS与ABA问题详解,无锁编程的经典陷阱怎么解决?
c++·人工智能
GoAI12 小时前
DeepSeek Harness Memory (一)主流记忆插件总结
后端·算法·面试
Pniubi13 小时前
力扣54.螺旋矩阵
算法·leetcode·矩阵
choumou_M15 小时前
算法_1:由浅入深学习快速排序QuickSort
学习·算法·排序算法
Coder_Shenshen16 小时前
罗克韦尔ACD工程归档离线变量树解析
算法·c#