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;
    }
};
相关推荐
张李浩16 小时前
Leetcode 054螺旋矩阵 采用方向数组解决
算法·leetcode·矩阵
big_rabbit050216 小时前
[算法][力扣101]对称二叉树
数据结构·算法·leetcode
美好的事情能不能发生在我身上17 小时前
Hot100中的:贪心专题
java·数据结构·算法
myloveasuka17 小时前
Java与C++多态访问成员变量/方法 对比
java·开发语言·c++
2301_8217005317 小时前
C++编译期多态实现
开发语言·c++·算法
奥地利落榜美术生灬17 小时前
c++ 锁相关(mutex 等)
开发语言·c++
xixihaha132417 小时前
C++与FPGA协同设计
开发语言·c++·算法
小小怪75018 小时前
C++中的函数式编程
开发语言·c++·算法
xixixiLucky18 小时前
编程入门算法题---小明爬楼梯求爬n层台阶一共多少种方法
算法
剑锋所指,所向披靡!18 小时前
数据结构之线性表
数据结构·算法