leetCode题解之寻找string中最后一个word的长度

1、题目描述

       返回一个 string中最后一个单词的长度。单词定义为没有空格的连续的字符,比如 ‘a’,'akkk'。

2、问题分析

     从后向前扫描,如果string是以空格‘  ’结尾的,就不用计数,现将空格最后的空格排除掉,直到找到最后一个出现的字符。从最后一个出现的字符开始计数,一直到下一次出现空格‘ ’。

    特殊情况是 输入的字符串是空的,先排除掉。

3、代码

 

 1
 1 int lengthOfLastWord(string s) {
 2         
 3         if(s.size() == 0)    // 排除字符长度为 0 的情况
 4             return 0;
 5         
 6         int i = s.size() - 1;
 7         int len = 0;
 8        while( s[i] == ' ' && i >= 0)   // 排除掉最后的空格
 9        {
10            i--;
11        }
12         
13         while(s[i] != ' ' &&  i >= 0)   // 从最后一个出现的字符开始,
14         {                                         // 向前寻找空格,找到空格或者字
15             i--;                                  // 符结束终止寻找
16             len++;
17         }
18         
19        return len;
20         
21     }

 

posted @ 2018-03-26 13:44  山里的小勇子  阅读(145)  评论(0编辑  收藏  举报