美文网首页
58. Length of Last Word

58. Length of Last Word

作者: RobotBerry | 来源:发表于2017-05-10 16:26 被阅读0次

    问题

    Given a string s consists of upper/lower-case alphabets and empty space characters ' ', return the length of last word in the string.

    If the last word does not exist, return 0.

    Note: A word is defined as a character sequence consists of non-space characters only.

    例子

    Given s = "Hello World",
    return 5.

    分析

    从后往前遍历,略过末尾的空格,遇到一个空格字符计数器加一,直到遇到空格结束遍历。

    要点

    从后往前遍历

    时间复杂度

    O(n)

    空间复杂度

    O(1)

    代码

    class Solution {
    public:
        int lengthOfLastWord(string s) {
            if (s.empty()) return 0;
            
            int len = 0;
            bool lastWord = false;
            for (int i = s.size() - 1; i >= 0; i--) {
                if (!lastWord && s[i] == ' ') continue;
                if (lastWord && s[i] == ' ') break;
                lastWord = true;
                len++;
            }
            return len;
        }
    };
    

    相关文章

      网友评论

          本文标题:58. Length of Last Word

          本文链接:https://www.haomeiwen.com/subject/llsgtxtx.html