[LeetCode-58] Length of Last Word(最后一个单词长度)

来源:互联网 发布:linux系统编程 编辑:程序博客网 时间:2024/06/07 16:54

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.

【分析】本题不难,但是要注意的是,注意s=" a  b  "这种情况,最后是空格的先全部丢掉,不做为单词分隔的标志但也不算做字符串长度。

从后遍历单词,遇到空格退出

代码如下:

int lengthOfLastWord(char* s) {if(!s)return 0;int sLen = strlen(s);int i = 0;int lengthOfLastWordCount = 0;while(s[sLen-1]==' ') sLen--;for(i = sLen-1;i>=0;i--) {if(s[i]=='') {break;}lengthOfLastWordCount++;}return lengthOfLastWordCount;}


1 0