刷题-力扣-58

58. 最后一个单词的长度

题目链接

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/length-of-last-word/
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

题目描述

给你一个字符串 s,由若干单词组成,单词之间用空格隔开。返回字符串中最后一个单词的长度。如果不存在最后一个单词,请返回 0 。
单词 是指仅由字母组成、不包含任何空格字符的最大子字符串。

示例 1:

输入:s = "Hello World"
输出:5

示例 2:

输入:s = " "
输出:0

提示:

  • 1 <= s.length <= 104
  • s 仅有英文字母和空格 ' ' 组成

题目分析

  1. 根据题目描述求字符串中最后一个单词的长度
  2. 倒序遍历字符串,遇到字母lastLen加一,否则遇到空格同时lastLen不等于0结束遍历

代码

class Solution {
public:
    int lengthOfLastWord(string s) {
        int lastLen = 0;
        for (auto rIt = s.rbegin(); rIt != s.rend(); ++rIt) {
            if (*rIt != ' ') ++lastLen;
            else if (lastLen != 0) break;
        }
        return lastLen;
    }
};
上一篇:Leetcode剑指 Offer 58 - II. 左旋转字符串(简单模拟)


下一篇:面试题-python3 100个人围一圈编号1-100,依次开始报数报到3的退出