您的位置:首页 > 其它

LeetCode---(58)Length of Last Word

2015-07-10 14:58 459 查看
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.

For example, 

Given s = 
"Hello World"
,

return 
5
.

class Solution {
public:
int lengthOfLastWord(string s) {
int len=s.size();
if(len==0)
return 0;
int res=0;
int i=0;
while(i!=len)
{
if(s[i]!=' ')
{
int curlength=0;
while(s[i]!='\0'&&s[i]!=' ')
{
curlength++;
i++;
}
res=curlength;
}
else
i++;
}
return res;
}
};


使用以上的算法可以解决求字符串内单词的多种变形,下边的算法,从后边开始遍历,更加简单

class Solution {

public:

    int lengthOfLastWord(string s) {

        if(s.empty()==1)

            return 0;

        int last=s.size()-1,first=0;

        while(s[last]==' '&&last>=0)

            last--;

        first=last;

        while(s[first]!=' '&&first>=0)

            first--;

        return last-first; 

    }

};
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: