最后一个单词的长度 -- LeetCode -- 9.21

最后一个单词的长度

给你一个字符串 s,由若干单词组成,单词前后用一些空格字符隔开。返回字符串中最后一个单词的长度。

单词 是指仅由字母组成、不包含任何空格字符的最大子字符串。

示例 1:

输入:s = "   fly me   to   the moon  "
输出:4

反向遍历:

  找到第一个字母开始计数,此时 flag = 1,在开始计数的同时找到 空格 此时 flag = 2 退出搜索,返回计数。

class Solution {
public:
    int lengthOfLastWord(string s) {
        int cnt = 0, flag = 0;
        for(int i = s.size() - 1; i >= 0 && flag != 2; i--){
            if((s[i] >= 'a' && s[i] <= 'z') || (s[i] >= 'A' && s[i] <= 'Z')){
                flag = 1;
                cnt++;
            }else if(flag == 1){
                flag = 2;
            }
        }
        return cnt;
    }
};

  

posted @ 2021-09-21 23:26  荣荣荣荣荣荣  阅读(38)  评论(0)    收藏  举报